	.file	"333208.c"
	.intel_syntax noprefix
	.text
	.globl	sbox
	.section	.rodata
	.align 32
	.type	sbox, @object
	.size	sbox, 256
sbox:
	.string	"c|w{\362ko\3050\001g+\376\327\253v\312\202\311}\372YG\360\255\324\242\257\234\244r\300\267\375\223&6?\367\3144\245\345\361q\3301\025\004\307#\303\030\226\005\232\007\022\200\342\353'\262u\t\203,\032\033nZ\240R;\326\263)\343/\204S\321"
	.ascii	"\355 \374\261[j\313\2769JLX\317\320\357\252\373CM3\205E\371\002"
	.ascii	"\177P<\237\250Q\243@\217\222\2358\365\274\266\332!\020\377\363"
	.ascii	"\322\315\f\023\354_\227D\027\304\247~=d]\031s`\201O\334\"*\220"
	.ascii	"\210F\356\270\024\336^\013\333\3402:\nI\006$\\\302\323\254b\221"
	.ascii	"\225\344y\347\3107m\215\325N\251lV\364\352ez\256\b\272x%.\034"
	.ascii	"\246\264\306\350\335t\037K\275\213\212p>\265fH\003\366\016a5"
	.ascii	"W\271\206\301\035\236\341\370\230\021i\331\216\224\233\036\207"
	.ascii	"\351\316U(\337\214\241\211\r\277\346BhA\231-\017\260T\273\026"
	.globl	rsbox
	.align 32
	.type	rsbox, @object
	.size	rsbox, 256
rsbox:
	.string	"R\tj\32506\2458\277@\243\236\201\363\327\373|\3439\202\233/\377\2074\216CD\304\336\351\313T{\2242\246\302#=\356L\225\013B\372\303N\b.\241f(\331$\262v[\242Im\213\321%r\370\366d\206h\230\026\324\244\\\314]e\266\222lpHP\375\355\271\332^\025FW\247\215\235\204\220\330\253"
	.ascii	"\214\274\323\n\367\344X\005\270\263E\006\320,\036\217\312?\017"
	.ascii	"\002\301\257\275\003\001\023\212k:\221\021AOg\334\352\227\362"
	.ascii	"\317\316\360\264\346s\226\254t\"\347\2555\205\342\3717\350\034"
	.ascii	"u\337nG\361\032q\035)\305\211o\267b\016\252\030\276\033\374V"
	.ascii	">K\306\322y \232\333\300\376x\315Z\364\037\335\2503\210\007\307"
	.ascii	"1\261\022\020Y'\200\354_`Q\177\251\031\265J\r-\345z\237\223\311"
	.ascii	"\234\357\240\340;M\256*\365\260\310\353\273<\203S\231a\027+\004"
	.ascii	"~\272w\326&\341i\024cU!\f}"
	.globl	Rcon
	.align 32
	.type	Rcon, @object
	.size	Rcon, 255
Rcon:
	.ascii	"\215\001\002\004\b\020 @\200\0336l\330\253M\232/^\274c\306\227"
	.ascii	"5j\324\263}\372\357\305\2219r\344\323\275a\302\237%J\2243f\314"
	.ascii	"\203\035:t\350\313\215\001\002\004\b\020 @\200\0336l\330\253"
	.ascii	"M\232/^\274c\306\2275j\324\263}\372\357\305\2219r\344\323\275"
	.ascii	"a\302\237%J\2243f\314\203\035:t\350\313\215\001\002\004\b\020"
	.ascii	" @\200\0336l\330\253M\232/^\274c\306\2275j\324\263}\372\357\305"
	.ascii	"\2219r\344\323\275a\302\237%J\2243f\314\203\035:t\350\313\215"
	.ascii	"\001\002\004\b\020 @\200\0336l\330\253M\232/^\274c\306\2275j"
	.ascii	"\324\263}\372\357\305\2219r\344\323\275a\302\237%J\2243f\314"
	.ascii	"\203\035:t\350\313\215\001\002\004\b\020 @\200\0336l\330\253"
	.ascii	"M\232/^\274c\306\2275j\324\263}\372\357\305\2219r\344\323\275"
	.ascii	"a\302\237%J\2243f\314\203\035:t\350\313"
	.align 8
.LC0:
	.string	"%s%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x\n"
	.text
	.globl	printstate
	.type	printstate, @function
printstate:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	sub	rsp, 56
	.cfi_offset 15, -24
	.cfi_offset 14, -32
	.cfi_offset 13, -40
	.cfi_offset 12, -48
	.cfi_offset 3, -56
	mov	QWORD PTR -56[rbp], rdi
	mov	rcx, rdx
	mov	rax, rsi
	mov	rdx, rdi
	mov	rdx, rcx
	mov	QWORD PTR -80[rbp], rax
	mov	QWORD PTR -72[rbp], rdx
	movzx	eax, BYTE PTR -65[rbp]
	movzx	ecx, al
	movzx	eax, BYTE PTR -66[rbp]
	movzx	edi, al
	movzx	eax, BYTE PTR -67[rbp]
	movzx	eax, al
	mov	DWORD PTR -60[rbp], eax
	movzx	eax, BYTE PTR -68[rbp]
	movzx	r15d, al
	movzx	eax, BYTE PTR -69[rbp]
	movzx	r14d, al
	movzx	eax, BYTE PTR -70[rbp]
	movzx	r13d, al
	movzx	eax, BYTE PTR -71[rbp]
	movzx	r12d, al
	movzx	eax, BYTE PTR -72[rbp]
	movzx	ebx, al
	movzx	eax, BYTE PTR -73[rbp]
	movzx	r11d, al
	movzx	eax, BYTE PTR -74[rbp]
	movzx	r10d, al
	movzx	eax, BYTE PTR -75[rbp]
	movzx	r9d, al
	movzx	eax, BYTE PTR -76[rbp]
	movzx	r8d, al
	movzx	eax, BYTE PTR -77[rbp]
	movzx	edx, al
	mov	DWORD PTR -64[rbp], edx
	movzx	eax, BYTE PTR -78[rbp]
	movzx	esi, al
	mov	DWORD PTR -84[rbp], esi
	movzx	eax, BYTE PTR -79[rbp]
	movzx	esi, al
	movzx	eax, BYTE PTR -80[rbp]
	movzx	edx, al
	mov	rax, QWORD PTR -56[rbp]
	push	rcx
	push	rdi
	mov	edi, DWORD PTR -60[rbp]
	push	rdi
	push	r15
	push	r14
	push	r13
	push	r12
	push	rbx
	push	r11
	push	r10
	push	r9
	push	r8
	mov	r9d, DWORD PTR -64[rbp]
	mov	r8d, DWORD PTR -84[rbp]
	mov	ecx, esi
	mov	rsi, rax
	lea	rdi, .LC0[rip]
	mov	eax, 0
	call	printf@PLT
	add	rsp, 96
	nop
	lea	rsp, -40[rbp]
	pop	rbx
	pop	r12
	pop	r13
	pop	r14
	pop	r15
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE0:
	.size	printstate, .-printstate
	.globl	AES128_encrypt
	.type	AES128_encrypt, @function
AES128_encrypt:
.LFB1:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 56
	mov	rax, rsi
	mov	r8, rdi
	mov	rsi, r8
	mov	rdi, r9
	mov	rdi, rax
	mov	QWORD PTR -160[rbp], rsi
	mov	QWORD PTR -152[rbp], rdi
	mov	QWORD PTR -176[rbp], rdx
	mov	QWORD PTR -168[rbp], rcx
	mov	BYTE PTR -141[rbp], 0
	movzx	edx, BYTE PTR -160[rbp]
	movzx	eax, BYTE PTR -176[rbp]
	xor	eax, edx
	mov	BYTE PTR -128[rbp], al
	movzx	edx, BYTE PTR -159[rbp]
	movzx	eax, BYTE PTR -175[rbp]
	xor	eax, edx
	mov	BYTE PTR -127[rbp], al
	movzx	edx, BYTE PTR -158[rbp]
	movzx	eax, BYTE PTR -174[rbp]
	xor	eax, edx
	mov	BYTE PTR -126[rbp], al
	movzx	edx, BYTE PTR -157[rbp]
	movzx	eax, BYTE PTR -173[rbp]
	xor	eax, edx
	mov	BYTE PTR -125[rbp], al
	movzx	edx, BYTE PTR -156[rbp]
	movzx	eax, BYTE PTR -172[rbp]
	xor	eax, edx
	mov	BYTE PTR -124[rbp], al
	movzx	edx, BYTE PTR -155[rbp]
	movzx	eax, BYTE PTR -171[rbp]
	xor	eax, edx
	mov	BYTE PTR -123[rbp], al
	movzx	edx, BYTE PTR -154[rbp]
	movzx	eax, BYTE PTR -170[rbp]
	xor	eax, edx
	mov	BYTE PTR -122[rbp], al
	movzx	edx, BYTE PTR -153[rbp]
	movzx	eax, BYTE PTR -169[rbp]
	xor	eax, edx
	mov	BYTE PTR -121[rbp], al
	movzx	edx, BYTE PTR -152[rbp]
	movzx	eax, BYTE PTR -168[rbp]
	xor	eax, edx
	mov	BYTE PTR -120[rbp], al
	movzx	edx, BYTE PTR -151[rbp]
	movzx	eax, BYTE PTR -167[rbp]
	xor	eax, edx
	mov	BYTE PTR -119[rbp], al
	movzx	edx, BYTE PTR -150[rbp]
	movzx	eax, BYTE PTR -166[rbp]
	xor	eax, edx
	mov	BYTE PTR -118[rbp], al
	movzx	edx, BYTE PTR -149[rbp]
	movzx	eax, BYTE PTR -165[rbp]
	xor	eax, edx
	mov	BYTE PTR -117[rbp], al
	movzx	edx, BYTE PTR -148[rbp]
	movzx	eax, BYTE PTR -164[rbp]
	xor	eax, edx
	mov	BYTE PTR -116[rbp], al
	movzx	edx, BYTE PTR -147[rbp]
	movzx	eax, BYTE PTR -163[rbp]
	xor	eax, edx
	mov	BYTE PTR -115[rbp], al
	movzx	edx, BYTE PTR -146[rbp]
	movzx	eax, BYTE PTR -162[rbp]
	xor	eax, edx
	mov	BYTE PTR -114[rbp], al
	movzx	edx, BYTE PTR -145[rbp]
	movzx	eax, BYTE PTR -161[rbp]
	xor	eax, edx
	mov	BYTE PTR -113[rbp], al
	mov	rax, QWORD PTR -128[rbp]
	mov	rdx, QWORD PTR -120[rbp]
	mov	QWORD PTR -160[rbp], rax
	mov	QWORD PTR -152[rbp], rdx
	mov	BYTE PTR -141[rbp], 1
	jmp	.L3
.L4:
	movzx	eax, BYTE PTR -160[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -112[rbp], al
	movzx	eax, BYTE PTR -159[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -111[rbp], al
	movzx	eax, BYTE PTR -158[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -110[rbp], al
	movzx	eax, BYTE PTR -157[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -109[rbp], al
	movzx	eax, BYTE PTR -156[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -108[rbp], al
	movzx	eax, BYTE PTR -155[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -107[rbp], al
	movzx	eax, BYTE PTR -154[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -106[rbp], al
	movzx	eax, BYTE PTR -153[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -105[rbp], al
	movzx	eax, BYTE PTR -152[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -104[rbp], al
	movzx	eax, BYTE PTR -151[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -103[rbp], al
	movzx	eax, BYTE PTR -150[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -102[rbp], al
	movzx	eax, BYTE PTR -149[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -101[rbp], al
	movzx	eax, BYTE PTR -148[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -100[rbp], al
	movzx	eax, BYTE PTR -147[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -99[rbp], al
	movzx	eax, BYTE PTR -146[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -98[rbp], al
	movzx	eax, BYTE PTR -145[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -97[rbp], al
	movzx	eax, BYTE PTR -112[rbp]
	mov	BYTE PTR -96[rbp], al
	movzx	eax, BYTE PTR -107[rbp]
	mov	BYTE PTR -95[rbp], al
	movzx	eax, BYTE PTR -102[rbp]
	mov	BYTE PTR -94[rbp], al
	movzx	eax, BYTE PTR -97[rbp]
	mov	BYTE PTR -93[rbp], al
	movzx	eax, BYTE PTR -108[rbp]
	mov	BYTE PTR -92[rbp], al
	movzx	eax, BYTE PTR -103[rbp]
	mov	BYTE PTR -91[rbp], al
	movzx	eax, BYTE PTR -98[rbp]
	mov	BYTE PTR -90[rbp], al
	movzx	eax, BYTE PTR -109[rbp]
	mov	BYTE PTR -89[rbp], al
	movzx	eax, BYTE PTR -104[rbp]
	mov	BYTE PTR -88[rbp], al
	movzx	eax, BYTE PTR -99[rbp]
	mov	BYTE PTR -87[rbp], al
	movzx	eax, BYTE PTR -110[rbp]
	mov	BYTE PTR -86[rbp], al
	movzx	eax, BYTE PTR -105[rbp]
	mov	BYTE PTR -85[rbp], al
	movzx	eax, BYTE PTR -100[rbp]
	mov	BYTE PTR -84[rbp], al
	movzx	eax, BYTE PTR -111[rbp]
	mov	BYTE PTR -83[rbp], al
	movzx	eax, BYTE PTR -106[rbp]
	mov	BYTE PTR -82[rbp], al
	movzx	eax, BYTE PTR -101[rbp]
	mov	BYTE PTR -81[rbp], al
	movzx	edx, BYTE PTR -96[rbp]
	movzx	eax, BYTE PTR -95[rbp]
	xor	eax, edx
	mov	BYTE PTR -80[rbp], al
	movzx	edx, BYTE PTR -95[rbp]
	movzx	eax, BYTE PTR -94[rbp]
	xor	eax, edx
	mov	BYTE PTR -79[rbp], al
	movzx	edx, BYTE PTR -94[rbp]
	movzx	eax, BYTE PTR -93[rbp]
	xor	eax, edx
	mov	BYTE PTR -78[rbp], al
	movzx	edx, BYTE PTR -93[rbp]
	movzx	eax, BYTE PTR -96[rbp]
	xor	eax, edx
	mov	BYTE PTR -77[rbp], al
	movzx	edx, BYTE PTR -92[rbp]
	movzx	eax, BYTE PTR -91[rbp]
	xor	eax, edx
	mov	BYTE PTR -76[rbp], al
	movzx	edx, BYTE PTR -91[rbp]
	movzx	eax, BYTE PTR -90[rbp]
	xor	eax, edx
	mov	BYTE PTR -75[rbp], al
	movzx	edx, BYTE PTR -90[rbp]
	movzx	eax, BYTE PTR -89[rbp]
	xor	eax, edx
	mov	BYTE PTR -74[rbp], al
	movzx	edx, BYTE PTR -89[rbp]
	movzx	eax, BYTE PTR -92[rbp]
	xor	eax, edx
	mov	BYTE PTR -73[rbp], al
	movzx	edx, BYTE PTR -88[rbp]
	movzx	eax, BYTE PTR -87[rbp]
	xor	eax, edx
	mov	BYTE PTR -72[rbp], al
	movzx	edx, BYTE PTR -87[rbp]
	movzx	eax, BYTE PTR -86[rbp]
	xor	eax, edx
	mov	BYTE PTR -71[rbp], al
	movzx	edx, BYTE PTR -86[rbp]
	movzx	eax, BYTE PTR -85[rbp]
	xor	eax, edx
	mov	BYTE PTR -70[rbp], al
	movzx	edx, BYTE PTR -85[rbp]
	movzx	eax, BYTE PTR -88[rbp]
	xor	eax, edx
	mov	BYTE PTR -69[rbp], al
	movzx	edx, BYTE PTR -84[rbp]
	movzx	eax, BYTE PTR -83[rbp]
	xor	eax, edx
	mov	BYTE PTR -68[rbp], al
	movzx	edx, BYTE PTR -83[rbp]
	movzx	eax, BYTE PTR -82[rbp]
	xor	eax, edx
	mov	BYTE PTR -67[rbp], al
	movzx	edx, BYTE PTR -82[rbp]
	movzx	eax, BYTE PTR -81[rbp]
	xor	eax, edx
	mov	BYTE PTR -66[rbp], al
	movzx	edx, BYTE PTR -81[rbp]
	movzx	eax, BYTE PTR -84[rbp]
	xor	eax, edx
	mov	BYTE PTR -65[rbp], al
	movzx	eax, BYTE PTR -80[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -80[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -64[rbp], al
	movzx	eax, BYTE PTR -79[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -79[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -63[rbp], al
	movzx	eax, BYTE PTR -78[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -78[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -62[rbp], al
	movzx	eax, BYTE PTR -77[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -77[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -61[rbp], al
	movzx	eax, BYTE PTR -76[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -76[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -60[rbp], al
	movzx	eax, BYTE PTR -75[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -75[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -59[rbp], al
	movzx	eax, BYTE PTR -74[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -74[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -58[rbp], al
	movzx	eax, BYTE PTR -73[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -73[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -57[rbp], al
	movzx	eax, BYTE PTR -72[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -72[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -56[rbp], al
	movzx	eax, BYTE PTR -71[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -71[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -55[rbp], al
	movzx	eax, BYTE PTR -70[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -70[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -54[rbp], al
	movzx	eax, BYTE PTR -69[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -69[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -53[rbp], al
	movzx	eax, BYTE PTR -68[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -68[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -52[rbp], al
	movzx	eax, BYTE PTR -67[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -67[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -51[rbp], al
	movzx	eax, BYTE PTR -66[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -66[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -50[rbp], al
	movzx	eax, BYTE PTR -65[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -65[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	mov	BYTE PTR -49[rbp], al
	movzx	edx, BYTE PTR -96[rbp]
	movzx	eax, BYTE PTR -95[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -94[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -93[rbp]
	xor	eax, edx
	mov	BYTE PTR -140[rbp], al
	movzx	edx, BYTE PTR -92[rbp]
	movzx	eax, BYTE PTR -91[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -90[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -89[rbp]
	xor	eax, edx
	mov	BYTE PTR -139[rbp], al
	movzx	edx, BYTE PTR -88[rbp]
	movzx	eax, BYTE PTR -87[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -86[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -85[rbp]
	xor	eax, edx
	mov	BYTE PTR -138[rbp], al
	movzx	edx, BYTE PTR -84[rbp]
	movzx	eax, BYTE PTR -83[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -82[rbp]
	xor	edx, eax
	movzx	eax, BYTE PTR -81[rbp]
	xor	eax, edx
	mov	BYTE PTR -137[rbp], al
	movzx	edx, BYTE PTR -64[rbp]
	movzx	eax, BYTE PTR -140[rbp]
	xor	eax, edx
	mov	BYTE PTR -48[rbp], al
	movzx	edx, BYTE PTR -63[rbp]
	movzx	eax, BYTE PTR -140[rbp]
	xor	eax, edx
	mov	BYTE PTR -47[rbp], al
	movzx	edx, BYTE PTR -62[rbp]
	movzx	eax, BYTE PTR -140[rbp]
	xor	eax, edx
	mov	BYTE PTR -46[rbp], al
	movzx	edx, BYTE PTR -61[rbp]
	movzx	eax, BYTE PTR -140[rbp]
	xor	eax, edx
	mov	BYTE PTR -45[rbp], al
	movzx	edx, BYTE PTR -60[rbp]
	movzx	eax, BYTE PTR -139[rbp]
	xor	eax, edx
	mov	BYTE PTR -44[rbp], al
	movzx	edx, BYTE PTR -59[rbp]
	movzx	eax, BYTE PTR -139[rbp]
	xor	eax, edx
	mov	BYTE PTR -43[rbp], al
	movzx	edx, BYTE PTR -58[rbp]
	movzx	eax, BYTE PTR -139[rbp]
	xor	eax, edx
	mov	BYTE PTR -42[rbp], al
	movzx	edx, BYTE PTR -57[rbp]
	movzx	eax, BYTE PTR -139[rbp]
	xor	eax, edx
	mov	BYTE PTR -41[rbp], al
	movzx	edx, BYTE PTR -56[rbp]
	movzx	eax, BYTE PTR -138[rbp]
	xor	eax, edx
	mov	BYTE PTR -40[rbp], al
	movzx	edx, BYTE PTR -55[rbp]
	movzx	eax, BYTE PTR -138[rbp]
	xor	eax, edx
	mov	BYTE PTR -39[rbp], al
	movzx	edx, BYTE PTR -54[rbp]
	movzx	eax, BYTE PTR -138[rbp]
	xor	eax, edx
	mov	BYTE PTR -38[rbp], al
	movzx	edx, BYTE PTR -53[rbp]
	movzx	eax, BYTE PTR -138[rbp]
	xor	eax, edx
	mov	BYTE PTR -37[rbp], al
	movzx	edx, BYTE PTR -52[rbp]
	movzx	eax, BYTE PTR -137[rbp]
	xor	eax, edx
	mov	BYTE PTR -36[rbp], al
	movzx	edx, BYTE PTR -51[rbp]
	movzx	eax, BYTE PTR -137[rbp]
	xor	eax, edx
	mov	BYTE PTR -35[rbp], al
	movzx	edx, BYTE PTR -50[rbp]
	movzx	eax, BYTE PTR -137[rbp]
	xor	eax, edx
	mov	BYTE PTR -34[rbp], al
	movzx	edx, BYTE PTR -49[rbp]
	movzx	eax, BYTE PTR -137[rbp]
	xor	eax, edx
	mov	BYTE PTR -33[rbp], al
	movzx	edx, BYTE PTR -96[rbp]
	movzx	eax, BYTE PTR -48[rbp]
	xor	eax, edx
	mov	BYTE PTR -32[rbp], al
	movzx	edx, BYTE PTR -95[rbp]
	movzx	eax, BYTE PTR -47[rbp]
	xor	eax, edx
	mov	BYTE PTR -31[rbp], al
	movzx	edx, BYTE PTR -94[rbp]
	movzx	eax, BYTE PTR -46[rbp]
	xor	eax, edx
	mov	BYTE PTR -30[rbp], al
	movzx	edx, BYTE PTR -93[rbp]
	movzx	eax, BYTE PTR -45[rbp]
	xor	eax, edx
	mov	BYTE PTR -29[rbp], al
	movzx	edx, BYTE PTR -92[rbp]
	movzx	eax, BYTE PTR -44[rbp]
	xor	eax, edx
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -91[rbp]
	movzx	eax, BYTE PTR -43[rbp]
	xor	eax, edx
	mov	BYTE PTR -27[rbp], al
	movzx	edx, BYTE PTR -90[rbp]
	movzx	eax, BYTE PTR -42[rbp]
	xor	eax, edx
	mov	BYTE PTR -26[rbp], al
	movzx	edx, BYTE PTR -89[rbp]
	movzx	eax, BYTE PTR -41[rbp]
	xor	eax, edx
	mov	BYTE PTR -25[rbp], al
	movzx	edx, BYTE PTR -88[rbp]
	movzx	eax, BYTE PTR -40[rbp]
	xor	eax, edx
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -87[rbp]
	movzx	eax, BYTE PTR -39[rbp]
	xor	eax, edx
	mov	BYTE PTR -23[rbp], al
	movzx	edx, BYTE PTR -86[rbp]
	movzx	eax, BYTE PTR -38[rbp]
	xor	eax, edx
	mov	BYTE PTR -22[rbp], al
	movzx	edx, BYTE PTR -85[rbp]
	movzx	eax, BYTE PTR -37[rbp]
	xor	eax, edx
	mov	BYTE PTR -21[rbp], al
	movzx	edx, BYTE PTR -84[rbp]
	movzx	eax, BYTE PTR -36[rbp]
	xor	eax, edx
	mov	BYTE PTR -20[rbp], al
	movzx	edx, BYTE PTR -83[rbp]
	movzx	eax, BYTE PTR -35[rbp]
	xor	eax, edx
	mov	BYTE PTR -19[rbp], al
	movzx	edx, BYTE PTR -82[rbp]
	movzx	eax, BYTE PTR -34[rbp]
	xor	eax, edx
	mov	BYTE PTR -18[rbp], al
	movzx	edx, BYTE PTR -81[rbp]
	movzx	eax, BYTE PTR -33[rbp]
	xor	eax, edx
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -163[rbp]
	mov	BYTE PTR -136[rbp], al
	movzx	eax, BYTE PTR -162[rbp]
	mov	BYTE PTR -135[rbp], al
	movzx	eax, BYTE PTR -161[rbp]
	mov	BYTE PTR -134[rbp], al
	movzx	eax, BYTE PTR -164[rbp]
	mov	BYTE PTR -133[rbp], al
	movzx	eax, BYTE PTR -136[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -132[rbp], al
	movzx	eax, BYTE PTR -135[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -131[rbp], al
	movzx	eax, BYTE PTR -134[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -130[rbp], al
	movzx	eax, BYTE PTR -133[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -129[rbp], al
	movzx	ecx, BYTE PTR -132[rbp]
	movzx	eax, BYTE PTR -141[rbp]
	cdqe
	lea	rdx, Rcon[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	xor	eax, ecx
	mov	BYTE PTR -132[rbp], al
	movzx	edx, BYTE PTR -176[rbp]
	movzx	eax, BYTE PTR -132[rbp]
	xor	eax, edx
	mov	BYTE PTR -176[rbp], al
	movzx	edx, BYTE PTR -175[rbp]
	movzx	eax, BYTE PTR -131[rbp]
	xor	eax, edx
	mov	BYTE PTR -175[rbp], al
	movzx	edx, BYTE PTR -174[rbp]
	movzx	eax, BYTE PTR -130[rbp]
	xor	eax, edx
	mov	BYTE PTR -174[rbp], al
	movzx	edx, BYTE PTR -173[rbp]
	movzx	eax, BYTE PTR -129[rbp]
	xor	eax, edx
	mov	BYTE PTR -173[rbp], al
	movzx	edx, BYTE PTR -172[rbp]
	movzx	eax, BYTE PTR -176[rbp]
	xor	eax, edx
	mov	BYTE PTR -172[rbp], al
	movzx	edx, BYTE PTR -171[rbp]
	movzx	eax, BYTE PTR -175[rbp]
	xor	eax, edx
	mov	BYTE PTR -171[rbp], al
	movzx	edx, BYTE PTR -170[rbp]
	movzx	eax, BYTE PTR -174[rbp]
	xor	eax, edx
	mov	BYTE PTR -170[rbp], al
	movzx	edx, BYTE PTR -169[rbp]
	movzx	eax, BYTE PTR -173[rbp]
	xor	eax, edx
	mov	BYTE PTR -169[rbp], al
	movzx	edx, BYTE PTR -168[rbp]
	movzx	eax, BYTE PTR -172[rbp]
	xor	eax, edx
	mov	BYTE PTR -168[rbp], al
	movzx	edx, BYTE PTR -167[rbp]
	movzx	eax, BYTE PTR -171[rbp]
	xor	eax, edx
	mov	BYTE PTR -167[rbp], al
	movzx	edx, BYTE PTR -166[rbp]
	movzx	eax, BYTE PTR -170[rbp]
	xor	eax, edx
	mov	BYTE PTR -166[rbp], al
	movzx	edx, BYTE PTR -165[rbp]
	movzx	eax, BYTE PTR -169[rbp]
	xor	eax, edx
	mov	BYTE PTR -165[rbp], al
	movzx	edx, BYTE PTR -164[rbp]
	movzx	eax, BYTE PTR -168[rbp]
	xor	eax, edx
	mov	BYTE PTR -164[rbp], al
	movzx	edx, BYTE PTR -163[rbp]
	movzx	eax, BYTE PTR -167[rbp]
	xor	eax, edx
	mov	BYTE PTR -163[rbp], al
	movzx	edx, BYTE PTR -162[rbp]
	movzx	eax, BYTE PTR -166[rbp]
	xor	eax, edx
	mov	BYTE PTR -162[rbp], al
	movzx	edx, BYTE PTR -161[rbp]
	movzx	eax, BYTE PTR -165[rbp]
	xor	eax, edx
	mov	BYTE PTR -161[rbp], al
	movzx	edx, BYTE PTR -32[rbp]
	movzx	eax, BYTE PTR -176[rbp]
	xor	eax, edx
	mov	BYTE PTR -16[rbp], al
	movzx	edx, BYTE PTR -31[rbp]
	movzx	eax, BYTE PTR -175[rbp]
	xor	eax, edx
	mov	BYTE PTR -15[rbp], al
	movzx	edx, BYTE PTR -30[rbp]
	movzx	eax, BYTE PTR -174[rbp]
	xor	eax, edx
	mov	BYTE PTR -14[rbp], al
	movzx	edx, BYTE PTR -29[rbp]
	movzx	eax, BYTE PTR -173[rbp]
	xor	eax, edx
	mov	BYTE PTR -13[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	movzx	eax, BYTE PTR -172[rbp]
	xor	eax, edx
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -27[rbp]
	movzx	eax, BYTE PTR -171[rbp]
	xor	eax, edx
	mov	BYTE PTR -11[rbp], al
	movzx	edx, BYTE PTR -26[rbp]
	movzx	eax, BYTE PTR -170[rbp]
	xor	eax, edx
	mov	BYTE PTR -10[rbp], al
	movzx	edx, BYTE PTR -25[rbp]
	movzx	eax, BYTE PTR -169[rbp]
	xor	eax, edx
	mov	BYTE PTR -9[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -168[rbp]
	xor	eax, edx
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -23[rbp]
	movzx	eax, BYTE PTR -167[rbp]
	xor	eax, edx
	mov	BYTE PTR -7[rbp], al
	movzx	edx, BYTE PTR -22[rbp]
	movzx	eax, BYTE PTR -166[rbp]
	xor	eax, edx
	mov	BYTE PTR -6[rbp], al
	movzx	edx, BYTE PTR -21[rbp]
	movzx	eax, BYTE PTR -165[rbp]
	xor	eax, edx
	mov	BYTE PTR -5[rbp], al
	movzx	edx, BYTE PTR -20[rbp]
	movzx	eax, BYTE PTR -164[rbp]
	xor	eax, edx
	mov	BYTE PTR -4[rbp], al
	movzx	edx, BYTE PTR -19[rbp]
	movzx	eax, BYTE PTR -163[rbp]
	xor	eax, edx
	mov	BYTE PTR -3[rbp], al
	movzx	edx, BYTE PTR -18[rbp]
	movzx	eax, BYTE PTR -162[rbp]
	xor	eax, edx
	mov	BYTE PTR -2[rbp], al
	movzx	edx, BYTE PTR -17[rbp]
	movzx	eax, BYTE PTR -161[rbp]
	xor	eax, edx
	mov	BYTE PTR -1[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR -160[rbp], rax
	mov	QWORD PTR -152[rbp], rdx
	movzx	eax, BYTE PTR -141[rbp]
	add	eax, 1
	mov	BYTE PTR -141[rbp], al
.L3:
	cmp	BYTE PTR -141[rbp], 9
	jbe	.L4
	movzx	eax, BYTE PTR -160[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -48[rbp], al
	movzx	eax, BYTE PTR -159[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -47[rbp], al
	movzx	eax, BYTE PTR -158[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -46[rbp], al
	movzx	eax, BYTE PTR -157[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -45[rbp], al
	movzx	eax, BYTE PTR -156[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -44[rbp], al
	movzx	eax, BYTE PTR -155[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -43[rbp], al
	movzx	eax, BYTE PTR -154[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -42[rbp], al
	movzx	eax, BYTE PTR -153[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -41[rbp], al
	movzx	eax, BYTE PTR -152[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -40[rbp], al
	movzx	eax, BYTE PTR -151[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -39[rbp], al
	movzx	eax, BYTE PTR -150[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -38[rbp], al
	movzx	eax, BYTE PTR -149[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -37[rbp], al
	movzx	eax, BYTE PTR -148[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -147[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -35[rbp], al
	movzx	eax, BYTE PTR -146[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -34[rbp], al
	movzx	eax, BYTE PTR -145[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -33[rbp], al
	movzx	eax, BYTE PTR -48[rbp]
	mov	BYTE PTR -32[rbp], al
	movzx	eax, BYTE PTR -43[rbp]
	mov	BYTE PTR -31[rbp], al
	movzx	eax, BYTE PTR -38[rbp]
	mov	BYTE PTR -30[rbp], al
	movzx	eax, BYTE PTR -33[rbp]
	mov	BYTE PTR -29[rbp], al
	movzx	eax, BYTE PTR -44[rbp]
	mov	BYTE PTR -28[rbp], al
	movzx	eax, BYTE PTR -39[rbp]
	mov	BYTE PTR -27[rbp], al
	movzx	eax, BYTE PTR -34[rbp]
	mov	BYTE PTR -26[rbp], al
	movzx	eax, BYTE PTR -45[rbp]
	mov	BYTE PTR -25[rbp], al
	movzx	eax, BYTE PTR -40[rbp]
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -35[rbp]
	mov	BYTE PTR -23[rbp], al
	movzx	eax, BYTE PTR -46[rbp]
	mov	BYTE PTR -22[rbp], al
	movzx	eax, BYTE PTR -41[rbp]
	mov	BYTE PTR -21[rbp], al
	movzx	eax, BYTE PTR -36[rbp]
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -47[rbp]
	mov	BYTE PTR -19[rbp], al
	movzx	eax, BYTE PTR -42[rbp]
	mov	BYTE PTR -18[rbp], al
	movzx	eax, BYTE PTR -37[rbp]
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -163[rbp]
	mov	BYTE PTR -80[rbp], al
	movzx	eax, BYTE PTR -162[rbp]
	mov	BYTE PTR -79[rbp], al
	movzx	eax, BYTE PTR -161[rbp]
	mov	BYTE PTR -78[rbp], al
	movzx	eax, BYTE PTR -164[rbp]
	mov	BYTE PTR -77[rbp], al
	movzx	eax, BYTE PTR -80[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -64[rbp], al
	movzx	eax, BYTE PTR -79[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -63[rbp], al
	movzx	eax, BYTE PTR -78[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -62[rbp], al
	movzx	eax, BYTE PTR -77[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -61[rbp], al
	movzx	ecx, BYTE PTR -64[rbp]
	movzx	eax, BYTE PTR -141[rbp]
	cdqe
	lea	rdx, Rcon[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	xor	eax, ecx
	mov	BYTE PTR -64[rbp], al
	movzx	edx, BYTE PTR -176[rbp]
	movzx	eax, BYTE PTR -64[rbp]
	xor	eax, edx
	mov	BYTE PTR -176[rbp], al
	movzx	edx, BYTE PTR -175[rbp]
	movzx	eax, BYTE PTR -63[rbp]
	xor	eax, edx
	mov	BYTE PTR -175[rbp], al
	movzx	edx, BYTE PTR -174[rbp]
	movzx	eax, BYTE PTR -62[rbp]
	xor	eax, edx
	mov	BYTE PTR -174[rbp], al
	movzx	edx, BYTE PTR -173[rbp]
	movzx	eax, BYTE PTR -61[rbp]
	xor	eax, edx
	mov	BYTE PTR -173[rbp], al
	movzx	edx, BYTE PTR -172[rbp]
	movzx	eax, BYTE PTR -176[rbp]
	xor	eax, edx
	mov	BYTE PTR -172[rbp], al
	movzx	edx, BYTE PTR -171[rbp]
	movzx	eax, BYTE PTR -175[rbp]
	xor	eax, edx
	mov	BYTE PTR -171[rbp], al
	movzx	edx, BYTE PTR -170[rbp]
	movzx	eax, BYTE PTR -174[rbp]
	xor	eax, edx
	mov	BYTE PTR -170[rbp], al
	movzx	edx, BYTE PTR -169[rbp]
	movzx	eax, BYTE PTR -173[rbp]
	xor	eax, edx
	mov	BYTE PTR -169[rbp], al
	movzx	edx, BYTE PTR -168[rbp]
	movzx	eax, BYTE PTR -172[rbp]
	xor	eax, edx
	mov	BYTE PTR -168[rbp], al
	movzx	edx, BYTE PTR -167[rbp]
	movzx	eax, BYTE PTR -171[rbp]
	xor	eax, edx
	mov	BYTE PTR -167[rbp], al
	movzx	edx, BYTE PTR -166[rbp]
	movzx	eax, BYTE PTR -170[rbp]
	xor	eax, edx
	mov	BYTE PTR -166[rbp], al
	movzx	edx, BYTE PTR -165[rbp]
	movzx	eax, BYTE PTR -169[rbp]
	xor	eax, edx
	mov	BYTE PTR -165[rbp], al
	movzx	edx, BYTE PTR -164[rbp]
	movzx	eax, BYTE PTR -168[rbp]
	xor	eax, edx
	mov	BYTE PTR -164[rbp], al
	movzx	edx, BYTE PTR -163[rbp]
	movzx	eax, BYTE PTR -167[rbp]
	xor	eax, edx
	mov	BYTE PTR -163[rbp], al
	movzx	edx, BYTE PTR -162[rbp]
	movzx	eax, BYTE PTR -166[rbp]
	xor	eax, edx
	mov	BYTE PTR -162[rbp], al
	movzx	edx, BYTE PTR -161[rbp]
	movzx	eax, BYTE PTR -165[rbp]
	xor	eax, edx
	mov	BYTE PTR -161[rbp], al
	movzx	edx, BYTE PTR -32[rbp]
	movzx	eax, BYTE PTR -176[rbp]
	xor	eax, edx
	mov	BYTE PTR -16[rbp], al
	movzx	edx, BYTE PTR -31[rbp]
	movzx	eax, BYTE PTR -175[rbp]
	xor	eax, edx
	mov	BYTE PTR -15[rbp], al
	movzx	edx, BYTE PTR -30[rbp]
	movzx	eax, BYTE PTR -174[rbp]
	xor	eax, edx
	mov	BYTE PTR -14[rbp], al
	movzx	edx, BYTE PTR -29[rbp]
	movzx	eax, BYTE PTR -173[rbp]
	xor	eax, edx
	mov	BYTE PTR -13[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	movzx	eax, BYTE PTR -172[rbp]
	xor	eax, edx
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -27[rbp]
	movzx	eax, BYTE PTR -171[rbp]
	xor	eax, edx
	mov	BYTE PTR -11[rbp], al
	movzx	edx, BYTE PTR -26[rbp]
	movzx	eax, BYTE PTR -170[rbp]
	xor	eax, edx
	mov	BYTE PTR -10[rbp], al
	movzx	edx, BYTE PTR -25[rbp]
	movzx	eax, BYTE PTR -169[rbp]
	xor	eax, edx
	mov	BYTE PTR -9[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -168[rbp]
	xor	eax, edx
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -23[rbp]
	movzx	eax, BYTE PTR -167[rbp]
	xor	eax, edx
	mov	BYTE PTR -7[rbp], al
	movzx	edx, BYTE PTR -22[rbp]
	movzx	eax, BYTE PTR -166[rbp]
	xor	eax, edx
	mov	BYTE PTR -6[rbp], al
	movzx	edx, BYTE PTR -21[rbp]
	movzx	eax, BYTE PTR -165[rbp]
	xor	eax, edx
	mov	BYTE PTR -5[rbp], al
	movzx	edx, BYTE PTR -20[rbp]
	movzx	eax, BYTE PTR -164[rbp]
	xor	eax, edx
	mov	BYTE PTR -4[rbp], al
	movzx	edx, BYTE PTR -19[rbp]
	movzx	eax, BYTE PTR -163[rbp]
	xor	eax, edx
	mov	BYTE PTR -3[rbp], al
	movzx	edx, BYTE PTR -18[rbp]
	movzx	eax, BYTE PTR -162[rbp]
	xor	eax, edx
	mov	BYTE PTR -2[rbp], al
	movzx	edx, BYTE PTR -17[rbp]
	movzx	eax, BYTE PTR -161[rbp]
	xor	eax, edx
	mov	BYTE PTR -1[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE1:
	.size	AES128_encrypt, .-AES128_encrypt
	.globl	AES128_decrypt
	.type	AES128_decrypt, @function
AES128_decrypt:
.LFB2:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 8
	mov	rax, rsi
	mov	r10, rdi
	mov	rsi, r10
	mov	rdi, r11
	mov	rdi, rax
	mov	QWORD PTR -112[rbp], rsi
	mov	QWORD PTR -104[rbp], rdi
	mov	QWORD PTR -128[rbp], rdx
	mov	QWORD PTR -120[rbp], rcx
	mov	BYTE PTR -89[rbp], 0
	mov	BYTE PTR -89[rbp], 1
	jmp	.L7
.L8:
	movzx	eax, BYTE PTR -115[rbp]
	mov	BYTE PTR -32[rbp], al
	movzx	eax, BYTE PTR -114[rbp]
	mov	BYTE PTR -31[rbp], al
	movzx	eax, BYTE PTR -113[rbp]
	mov	BYTE PTR -30[rbp], al
	movzx	eax, BYTE PTR -116[rbp]
	mov	BYTE PTR -29[rbp], al
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -16[rbp], al
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -15[rbp], al
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -14[rbp], al
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -13[rbp], al
	movzx	ecx, BYTE PTR -16[rbp]
	movzx	eax, BYTE PTR -89[rbp]
	cdqe
	lea	rdx, Rcon[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	xor	eax, ecx
	mov	BYTE PTR -16[rbp], al
	movzx	edx, BYTE PTR -128[rbp]
	movzx	eax, BYTE PTR -16[rbp]
	xor	eax, edx
	mov	BYTE PTR -128[rbp], al
	movzx	edx, BYTE PTR -127[rbp]
	movzx	eax, BYTE PTR -15[rbp]
	xor	eax, edx
	mov	BYTE PTR -127[rbp], al
	movzx	edx, BYTE PTR -126[rbp]
	movzx	eax, BYTE PTR -14[rbp]
	xor	eax, edx
	mov	BYTE PTR -126[rbp], al
	movzx	edx, BYTE PTR -125[rbp]
	movzx	eax, BYTE PTR -13[rbp]
	xor	eax, edx
	mov	BYTE PTR -125[rbp], al
	movzx	edx, BYTE PTR -124[rbp]
	movzx	eax, BYTE PTR -128[rbp]
	xor	eax, edx
	mov	BYTE PTR -124[rbp], al
	movzx	edx, BYTE PTR -123[rbp]
	movzx	eax, BYTE PTR -127[rbp]
	xor	eax, edx
	mov	BYTE PTR -123[rbp], al
	movzx	edx, BYTE PTR -122[rbp]
	movzx	eax, BYTE PTR -126[rbp]
	xor	eax, edx
	mov	BYTE PTR -122[rbp], al
	movzx	edx, BYTE PTR -121[rbp]
	movzx	eax, BYTE PTR -125[rbp]
	xor	eax, edx
	mov	BYTE PTR -121[rbp], al
	movzx	edx, BYTE PTR -120[rbp]
	movzx	eax, BYTE PTR -124[rbp]
	xor	eax, edx
	mov	BYTE PTR -120[rbp], al
	movzx	edx, BYTE PTR -119[rbp]
	movzx	eax, BYTE PTR -123[rbp]
	xor	eax, edx
	mov	BYTE PTR -119[rbp], al
	movzx	edx, BYTE PTR -118[rbp]
	movzx	eax, BYTE PTR -122[rbp]
	xor	eax, edx
	mov	BYTE PTR -118[rbp], al
	movzx	edx, BYTE PTR -117[rbp]
	movzx	eax, BYTE PTR -121[rbp]
	xor	eax, edx
	mov	BYTE PTR -117[rbp], al
	movzx	edx, BYTE PTR -116[rbp]
	movzx	eax, BYTE PTR -120[rbp]
	xor	eax, edx
	mov	BYTE PTR -116[rbp], al
	movzx	edx, BYTE PTR -115[rbp]
	movzx	eax, BYTE PTR -119[rbp]
	xor	eax, edx
	mov	BYTE PTR -115[rbp], al
	movzx	edx, BYTE PTR -114[rbp]
	movzx	eax, BYTE PTR -118[rbp]
	xor	eax, edx
	mov	BYTE PTR -114[rbp], al
	movzx	edx, BYTE PTR -113[rbp]
	movzx	eax, BYTE PTR -117[rbp]
	xor	eax, edx
	mov	BYTE PTR -113[rbp], al
	movzx	eax, BYTE PTR -89[rbp]
	add	eax, 1
	mov	BYTE PTR -89[rbp], al
.L7:
	cmp	BYTE PTR -89[rbp], 10
	jbe	.L8
	movzx	edx, BYTE PTR -112[rbp]
	movzx	eax, BYTE PTR -128[rbp]
	xor	eax, edx
	mov	BYTE PTR -80[rbp], al
	movzx	edx, BYTE PTR -111[rbp]
	movzx	eax, BYTE PTR -127[rbp]
	xor	eax, edx
	mov	BYTE PTR -79[rbp], al
	movzx	edx, BYTE PTR -110[rbp]
	movzx	eax, BYTE PTR -126[rbp]
	xor	eax, edx
	mov	BYTE PTR -78[rbp], al
	movzx	edx, BYTE PTR -109[rbp]
	movzx	eax, BYTE PTR -125[rbp]
	xor	eax, edx
	mov	BYTE PTR -77[rbp], al
	movzx	edx, BYTE PTR -108[rbp]
	movzx	eax, BYTE PTR -124[rbp]
	xor	eax, edx
	mov	BYTE PTR -76[rbp], al
	movzx	edx, BYTE PTR -107[rbp]
	movzx	eax, BYTE PTR -123[rbp]
	xor	eax, edx
	mov	BYTE PTR -75[rbp], al
	movzx	edx, BYTE PTR -106[rbp]
	movzx	eax, BYTE PTR -122[rbp]
	xor	eax, edx
	mov	BYTE PTR -74[rbp], al
	movzx	edx, BYTE PTR -105[rbp]
	movzx	eax, BYTE PTR -121[rbp]
	xor	eax, edx
	mov	BYTE PTR -73[rbp], al
	movzx	edx, BYTE PTR -104[rbp]
	movzx	eax, BYTE PTR -120[rbp]
	xor	eax, edx
	mov	BYTE PTR -72[rbp], al
	movzx	edx, BYTE PTR -103[rbp]
	movzx	eax, BYTE PTR -119[rbp]
	xor	eax, edx
	mov	BYTE PTR -71[rbp], al
	movzx	edx, BYTE PTR -102[rbp]
	movzx	eax, BYTE PTR -118[rbp]
	xor	eax, edx
	mov	BYTE PTR -70[rbp], al
	movzx	edx, BYTE PTR -101[rbp]
	movzx	eax, BYTE PTR -117[rbp]
	xor	eax, edx
	mov	BYTE PTR -69[rbp], al
	movzx	edx, BYTE PTR -100[rbp]
	movzx	eax, BYTE PTR -116[rbp]
	xor	eax, edx
	mov	BYTE PTR -68[rbp], al
	movzx	edx, BYTE PTR -99[rbp]
	movzx	eax, BYTE PTR -115[rbp]
	xor	eax, edx
	mov	BYTE PTR -67[rbp], al
	movzx	edx, BYTE PTR -98[rbp]
	movzx	eax, BYTE PTR -114[rbp]
	xor	eax, edx
	mov	BYTE PTR -66[rbp], al
	movzx	edx, BYTE PTR -97[rbp]
	movzx	eax, BYTE PTR -113[rbp]
	xor	eax, edx
	mov	BYTE PTR -65[rbp], al
	mov	rax, QWORD PTR -80[rbp]
	mov	rdx, QWORD PTR -72[rbp]
	mov	QWORD PTR -112[rbp], rax
	mov	QWORD PTR -104[rbp], rdx
	mov	BYTE PTR -89[rbp], 9
	jmp	.L9
.L10:
	movzx	eax, BYTE PTR -112[rbp]
	mov	BYTE PTR -64[rbp], al
	movzx	eax, BYTE PTR -99[rbp]
	mov	BYTE PTR -63[rbp], al
	movzx	eax, BYTE PTR -102[rbp]
	mov	BYTE PTR -62[rbp], al
	movzx	eax, BYTE PTR -105[rbp]
	mov	BYTE PTR -61[rbp], al
	movzx	eax, BYTE PTR -108[rbp]
	mov	BYTE PTR -60[rbp], al
	movzx	eax, BYTE PTR -111[rbp]
	mov	BYTE PTR -59[rbp], al
	movzx	eax, BYTE PTR -98[rbp]
	mov	BYTE PTR -58[rbp], al
	movzx	eax, BYTE PTR -101[rbp]
	mov	BYTE PTR -57[rbp], al
	movzx	eax, BYTE PTR -104[rbp]
	mov	BYTE PTR -56[rbp], al
	movzx	eax, BYTE PTR -107[rbp]
	mov	BYTE PTR -55[rbp], al
	movzx	eax, BYTE PTR -110[rbp]
	mov	BYTE PTR -54[rbp], al
	movzx	eax, BYTE PTR -97[rbp]
	mov	BYTE PTR -53[rbp], al
	movzx	eax, BYTE PTR -100[rbp]
	mov	BYTE PTR -52[rbp], al
	movzx	eax, BYTE PTR -103[rbp]
	mov	BYTE PTR -51[rbp], al
	movzx	eax, BYTE PTR -106[rbp]
	mov	BYTE PTR -50[rbp], al
	movzx	eax, BYTE PTR -109[rbp]
	mov	BYTE PTR -49[rbp], al
	movzx	eax, BYTE PTR -64[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -48[rbp], al
	movzx	eax, BYTE PTR -63[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -47[rbp], al
	movzx	eax, BYTE PTR -62[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -46[rbp], al
	movzx	eax, BYTE PTR -61[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -45[rbp], al
	movzx	eax, BYTE PTR -60[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -44[rbp], al
	movzx	eax, BYTE PTR -59[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -43[rbp], al
	movzx	eax, BYTE PTR -58[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -42[rbp], al
	movzx	eax, BYTE PTR -57[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -41[rbp], al
	movzx	eax, BYTE PTR -56[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -40[rbp], al
	movzx	eax, BYTE PTR -55[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -39[rbp], al
	movzx	eax, BYTE PTR -54[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -38[rbp], al
	movzx	eax, BYTE PTR -53[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -37[rbp], al
	movzx	eax, BYTE PTR -52[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -51[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -35[rbp], al
	movzx	eax, BYTE PTR -50[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -34[rbp], al
	movzx	eax, BYTE PTR -49[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -33[rbp], al
	movzx	edx, BYTE PTR -116[rbp]
	movzx	eax, BYTE PTR -120[rbp]
	xor	eax, edx
	mov	BYTE PTR -116[rbp], al
	movzx	edx, BYTE PTR -115[rbp]
	movzx	eax, BYTE PTR -119[rbp]
	xor	eax, edx
	mov	BYTE PTR -115[rbp], al
	movzx	edx, BYTE PTR -114[rbp]
	movzx	eax, BYTE PTR -118[rbp]
	xor	eax, edx
	mov	BYTE PTR -114[rbp], al
	movzx	edx, BYTE PTR -113[rbp]
	movzx	eax, BYTE PTR -117[rbp]
	xor	eax, edx
	mov	BYTE PTR -113[rbp], al
	movzx	edx, BYTE PTR -120[rbp]
	movzx	eax, BYTE PTR -124[rbp]
	xor	eax, edx
	mov	BYTE PTR -120[rbp], al
	movzx	edx, BYTE PTR -119[rbp]
	movzx	eax, BYTE PTR -123[rbp]
	xor	eax, edx
	mov	BYTE PTR -119[rbp], al
	movzx	edx, BYTE PTR -118[rbp]
	movzx	eax, BYTE PTR -122[rbp]
	xor	eax, edx
	mov	BYTE PTR -118[rbp], al
	movzx	edx, BYTE PTR -117[rbp]
	movzx	eax, BYTE PTR -121[rbp]
	xor	eax, edx
	mov	BYTE PTR -117[rbp], al
	movzx	edx, BYTE PTR -124[rbp]
	movzx	eax, BYTE PTR -128[rbp]
	xor	eax, edx
	mov	BYTE PTR -124[rbp], al
	movzx	edx, BYTE PTR -123[rbp]
	movzx	eax, BYTE PTR -127[rbp]
	xor	eax, edx
	mov	BYTE PTR -123[rbp], al
	movzx	edx, BYTE PTR -122[rbp]
	movzx	eax, BYTE PTR -126[rbp]
	xor	eax, edx
	mov	BYTE PTR -122[rbp], al
	movzx	edx, BYTE PTR -121[rbp]
	movzx	eax, BYTE PTR -125[rbp]
	xor	eax, edx
	mov	BYTE PTR -121[rbp], al
	movzx	eax, BYTE PTR -115[rbp]
	mov	BYTE PTR -88[rbp], al
	movzx	eax, BYTE PTR -114[rbp]
	mov	BYTE PTR -87[rbp], al
	movzx	eax, BYTE PTR -113[rbp]
	mov	BYTE PTR -86[rbp], al
	movzx	eax, BYTE PTR -116[rbp]
	mov	BYTE PTR -85[rbp], al
	movzx	eax, BYTE PTR -88[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -84[rbp], al
	movzx	eax, BYTE PTR -87[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -83[rbp], al
	movzx	eax, BYTE PTR -86[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -82[rbp], al
	movzx	eax, BYTE PTR -85[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -81[rbp], al
	movzx	ecx, BYTE PTR -84[rbp]
	movzx	eax, BYTE PTR -89[rbp]
	add	eax, 1
	cdqe
	lea	rdx, Rcon[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	xor	eax, ecx
	mov	BYTE PTR -84[rbp], al
	movzx	edx, BYTE PTR -128[rbp]
	movzx	eax, BYTE PTR -84[rbp]
	xor	eax, edx
	mov	BYTE PTR -128[rbp], al
	movzx	edx, BYTE PTR -127[rbp]
	movzx	eax, BYTE PTR -83[rbp]
	xor	eax, edx
	mov	BYTE PTR -127[rbp], al
	movzx	edx, BYTE PTR -126[rbp]
	movzx	eax, BYTE PTR -82[rbp]
	xor	eax, edx
	mov	BYTE PTR -126[rbp], al
	movzx	edx, BYTE PTR -125[rbp]
	movzx	eax, BYTE PTR -81[rbp]
	xor	eax, edx
	mov	BYTE PTR -125[rbp], al
	movzx	edx, BYTE PTR -48[rbp]
	movzx	eax, BYTE PTR -128[rbp]
	xor	eax, edx
	mov	BYTE PTR -32[rbp], al
	movzx	edx, BYTE PTR -47[rbp]
	movzx	eax, BYTE PTR -127[rbp]
	xor	eax, edx
	mov	BYTE PTR -31[rbp], al
	movzx	edx, BYTE PTR -46[rbp]
	movzx	eax, BYTE PTR -126[rbp]
	xor	eax, edx
	mov	BYTE PTR -30[rbp], al
	movzx	edx, BYTE PTR -45[rbp]
	movzx	eax, BYTE PTR -125[rbp]
	xor	eax, edx
	mov	BYTE PTR -29[rbp], al
	movzx	edx, BYTE PTR -44[rbp]
	movzx	eax, BYTE PTR -124[rbp]
	xor	eax, edx
	mov	BYTE PTR -28[rbp], al
	movzx	edx, BYTE PTR -43[rbp]
	movzx	eax, BYTE PTR -123[rbp]
	xor	eax, edx
	mov	BYTE PTR -27[rbp], al
	movzx	edx, BYTE PTR -42[rbp]
	movzx	eax, BYTE PTR -122[rbp]
	xor	eax, edx
	mov	BYTE PTR -26[rbp], al
	movzx	edx, BYTE PTR -41[rbp]
	movzx	eax, BYTE PTR -121[rbp]
	xor	eax, edx
	mov	BYTE PTR -25[rbp], al
	movzx	edx, BYTE PTR -40[rbp]
	movzx	eax, BYTE PTR -120[rbp]
	xor	eax, edx
	mov	BYTE PTR -24[rbp], al
	movzx	edx, BYTE PTR -39[rbp]
	movzx	eax, BYTE PTR -119[rbp]
	xor	eax, edx
	mov	BYTE PTR -23[rbp], al
	movzx	edx, BYTE PTR -38[rbp]
	movzx	eax, BYTE PTR -118[rbp]
	xor	eax, edx
	mov	BYTE PTR -22[rbp], al
	movzx	edx, BYTE PTR -37[rbp]
	movzx	eax, BYTE PTR -117[rbp]
	xor	eax, edx
	mov	BYTE PTR -21[rbp], al
	movzx	edx, BYTE PTR -36[rbp]
	movzx	eax, BYTE PTR -116[rbp]
	xor	eax, edx
	mov	BYTE PTR -20[rbp], al
	movzx	edx, BYTE PTR -35[rbp]
	movzx	eax, BYTE PTR -115[rbp]
	xor	eax, edx
	mov	BYTE PTR -19[rbp], al
	movzx	edx, BYTE PTR -34[rbp]
	movzx	eax, BYTE PTR -114[rbp]
	xor	eax, edx
	mov	BYTE PTR -18[rbp], al
	movzx	edx, BYTE PTR -33[rbp]
	movzx	eax, BYTE PTR -113[rbp]
	xor	eax, edx
	mov	BYTE PTR -17[rbp], al
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	ecx, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -31[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -30[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -29[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	eax, ecx
	mov	BYTE PTR -16[rbp], al
	movzx	eax, BYTE PTR -32[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	ecx, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -30[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -29[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -15[rbp], al
	movzx	eax, BYTE PTR -32[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	mov	ecx, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -31[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -29[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -14[rbp], al
	movzx	eax, BYTE PTR -32[rbp]
	mov	ecx, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -32[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -31[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -31[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -30[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -30[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -29[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -13[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	ecx, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -27[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -26[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -25[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	eax, ecx
	mov	BYTE PTR -12[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	ecx, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -26[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -25[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -11[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	mov	ecx, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -27[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -25[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -10[rbp], al
	movzx	eax, BYTE PTR -28[rbp]
	mov	ecx, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -28[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -27[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -27[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -26[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -26[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -25[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -9[rbp], al
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	ecx, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -23[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -22[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -21[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	eax, ecx
	mov	BYTE PTR -8[rbp], al
	movzx	eax, BYTE PTR -24[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	ecx, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -22[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -21[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -7[rbp], al
	movzx	eax, BYTE PTR -24[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	mov	ecx, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -23[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -21[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -6[rbp], al
	movzx	eax, BYTE PTR -24[rbp]
	mov	ecx, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -24[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -23[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -23[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -22[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -22[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -21[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -5[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	add	eax, eax
	mov	ecx, eax
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	ecx, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -19[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -18[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -17[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	eax, ecx
	mov	BYTE PTR -4[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	ecx, edi
	xor	ecx, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -18[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -17[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -3[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	ecx, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, ecx
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	mov	ecx, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -19[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -17[rbp]
	mov	esi, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	add	eax, eax
	mov	edi, eax
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -2[rbp], al
	movzx	eax, BYTE PTR -20[rbp]
	mov	ecx, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -20[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -19[rbp]
	mov	edi, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	mov	esi, edi
	xor	esi, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -19[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	ecx, eax
	movzx	eax, BYTE PTR -18[rbp]
	mov	r8d, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	lea	esi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -18[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, esi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, r8d
	xor	ecx, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	add	eax, eax
	mov	esi, eax
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	esi, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r8d, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	xor	esi, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	add	eax, eax
	mov	r9d, eax
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	lea	edi, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	movzx	eax, al
	lea	r8d, [rax+rax]
	movzx	eax, BYTE PTR -17[rbp]
	shr	al, 7
	movzx	eax, al
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r8d
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, edi
	sar	eax, 7
	and	eax, 1
	mov	edx, eax
	mov	eax, edx
	add	eax, eax
	add	eax, edx
	lea	edx, 0[0+rax*8]
	add	eax, edx
	xor	eax, r9d
	xor	eax, esi
	xor	eax, ecx
	mov	BYTE PTR -1[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	mov	QWORD PTR -112[rbp], rax
	mov	QWORD PTR -104[rbp], rdx
	movzx	eax, BYTE PTR -89[rbp]
	sub	eax, 1
	mov	BYTE PTR -89[rbp], al
.L9:
	cmp	BYTE PTR -89[rbp], 0
	jne	.L10
	movzx	eax, BYTE PTR -112[rbp]
	mov	BYTE PTR -48[rbp], al
	movzx	eax, BYTE PTR -99[rbp]
	mov	BYTE PTR -47[rbp], al
	movzx	eax, BYTE PTR -102[rbp]
	mov	BYTE PTR -46[rbp], al
	movzx	eax, BYTE PTR -105[rbp]
	mov	BYTE PTR -45[rbp], al
	movzx	eax, BYTE PTR -108[rbp]
	mov	BYTE PTR -44[rbp], al
	movzx	eax, BYTE PTR -111[rbp]
	mov	BYTE PTR -43[rbp], al
	movzx	eax, BYTE PTR -98[rbp]
	mov	BYTE PTR -42[rbp], al
	movzx	eax, BYTE PTR -101[rbp]
	mov	BYTE PTR -41[rbp], al
	movzx	eax, BYTE PTR -104[rbp]
	mov	BYTE PTR -40[rbp], al
	movzx	eax, BYTE PTR -107[rbp]
	mov	BYTE PTR -39[rbp], al
	movzx	eax, BYTE PTR -110[rbp]
	mov	BYTE PTR -38[rbp], al
	movzx	eax, BYTE PTR -97[rbp]
	mov	BYTE PTR -37[rbp], al
	movzx	eax, BYTE PTR -100[rbp]
	mov	BYTE PTR -36[rbp], al
	movzx	eax, BYTE PTR -103[rbp]
	mov	BYTE PTR -35[rbp], al
	movzx	eax, BYTE PTR -106[rbp]
	mov	BYTE PTR -34[rbp], al
	movzx	eax, BYTE PTR -109[rbp]
	mov	BYTE PTR -33[rbp], al
	movzx	eax, BYTE PTR -48[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -32[rbp], al
	movzx	eax, BYTE PTR -47[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -31[rbp], al
	movzx	eax, BYTE PTR -46[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -30[rbp], al
	movzx	eax, BYTE PTR -45[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -29[rbp], al
	movzx	eax, BYTE PTR -44[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -28[rbp], al
	movzx	eax, BYTE PTR -43[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -27[rbp], al
	movzx	eax, BYTE PTR -42[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -26[rbp], al
	movzx	eax, BYTE PTR -41[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -25[rbp], al
	movzx	eax, BYTE PTR -40[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -24[rbp], al
	movzx	eax, BYTE PTR -39[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -23[rbp], al
	movzx	eax, BYTE PTR -38[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -22[rbp], al
	movzx	eax, BYTE PTR -37[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -21[rbp], al
	movzx	eax, BYTE PTR -36[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -20[rbp], al
	movzx	eax, BYTE PTR -35[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -19[rbp], al
	movzx	eax, BYTE PTR -34[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -18[rbp], al
	movzx	eax, BYTE PTR -33[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, rsbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -17[rbp], al
	movzx	edx, BYTE PTR -116[rbp]
	movzx	eax, BYTE PTR -120[rbp]
	xor	eax, edx
	mov	BYTE PTR -116[rbp], al
	movzx	edx, BYTE PTR -115[rbp]
	movzx	eax, BYTE PTR -119[rbp]
	xor	eax, edx
	mov	BYTE PTR -115[rbp], al
	movzx	edx, BYTE PTR -114[rbp]
	movzx	eax, BYTE PTR -118[rbp]
	xor	eax, edx
	mov	BYTE PTR -114[rbp], al
	movzx	edx, BYTE PTR -113[rbp]
	movzx	eax, BYTE PTR -117[rbp]
	xor	eax, edx
	mov	BYTE PTR -113[rbp], al
	movzx	edx, BYTE PTR -120[rbp]
	movzx	eax, BYTE PTR -124[rbp]
	xor	eax, edx
	mov	BYTE PTR -120[rbp], al
	movzx	edx, BYTE PTR -119[rbp]
	movzx	eax, BYTE PTR -123[rbp]
	xor	eax, edx
	mov	BYTE PTR -119[rbp], al
	movzx	edx, BYTE PTR -118[rbp]
	movzx	eax, BYTE PTR -122[rbp]
	xor	eax, edx
	mov	BYTE PTR -118[rbp], al
	movzx	edx, BYTE PTR -117[rbp]
	movzx	eax, BYTE PTR -121[rbp]
	xor	eax, edx
	mov	BYTE PTR -117[rbp], al
	movzx	edx, BYTE PTR -124[rbp]
	movzx	eax, BYTE PTR -128[rbp]
	xor	eax, edx
	mov	BYTE PTR -124[rbp], al
	movzx	edx, BYTE PTR -123[rbp]
	movzx	eax, BYTE PTR -127[rbp]
	xor	eax, edx
	mov	BYTE PTR -123[rbp], al
	movzx	edx, BYTE PTR -122[rbp]
	movzx	eax, BYTE PTR -126[rbp]
	xor	eax, edx
	mov	BYTE PTR -122[rbp], al
	movzx	edx, BYTE PTR -121[rbp]
	movzx	eax, BYTE PTR -125[rbp]
	xor	eax, edx
	mov	BYTE PTR -121[rbp], al
	movzx	eax, BYTE PTR -115[rbp]
	mov	BYTE PTR -84[rbp], al
	movzx	eax, BYTE PTR -114[rbp]
	mov	BYTE PTR -83[rbp], al
	movzx	eax, BYTE PTR -113[rbp]
	mov	BYTE PTR -82[rbp], al
	movzx	eax, BYTE PTR -116[rbp]
	mov	BYTE PTR -81[rbp], al
	movzx	eax, BYTE PTR -84[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -64[rbp], al
	movzx	eax, BYTE PTR -83[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -63[rbp], al
	movzx	eax, BYTE PTR -82[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -62[rbp], al
	movzx	eax, BYTE PTR -81[rbp]
	movzx	eax, al
	cdqe
	lea	rdx, sbox[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	mov	BYTE PTR -61[rbp], al
	movzx	ecx, BYTE PTR -64[rbp]
	movzx	eax, BYTE PTR -89[rbp]
	add	eax, 1
	cdqe
	lea	rdx, Rcon[rip]
	movzx	eax, BYTE PTR [rax+rdx]
	xor	eax, ecx
	mov	BYTE PTR -64[rbp], al
	movzx	edx, BYTE PTR -128[rbp]
	movzx	eax, BYTE PTR -64[rbp]
	xor	eax, edx
	mov	BYTE PTR -128[rbp], al
	movzx	edx, BYTE PTR -127[rbp]
	movzx	eax, BYTE PTR -63[rbp]
	xor	eax, edx
	mov	BYTE PTR -127[rbp], al
	movzx	edx, BYTE PTR -126[rbp]
	movzx	eax, BYTE PTR -62[rbp]
	xor	eax, edx
	mov	BYTE PTR -126[rbp], al
	movzx	edx, BYTE PTR -125[rbp]
	movzx	eax, BYTE PTR -61[rbp]
	xor	eax, edx
	mov	BYTE PTR -125[rbp], al
	movzx	edx, BYTE PTR -32[rbp]
	movzx	eax, BYTE PTR -128[rbp]
	xor	eax, edx
	mov	BYTE PTR -16[rbp], al
	movzx	edx, BYTE PTR -31[rbp]
	movzx	eax, BYTE PTR -127[rbp]
	xor	eax, edx
	mov	BYTE PTR -15[rbp], al
	movzx	edx, BYTE PTR -30[rbp]
	movzx	eax, BYTE PTR -126[rbp]
	xor	eax, edx
	mov	BYTE PTR -14[rbp], al
	movzx	edx, BYTE PTR -29[rbp]
	movzx	eax, BYTE PTR -125[rbp]
	xor	eax, edx
	mov	BYTE PTR -13[rbp], al
	movzx	edx, BYTE PTR -28[rbp]
	movzx	eax, BYTE PTR -124[rbp]
	xor	eax, edx
	mov	BYTE PTR -12[rbp], al
	movzx	edx, BYTE PTR -27[rbp]
	movzx	eax, BYTE PTR -123[rbp]
	xor	eax, edx
	mov	BYTE PTR -11[rbp], al
	movzx	edx, BYTE PTR -26[rbp]
	movzx	eax, BYTE PTR -122[rbp]
	xor	eax, edx
	mov	BYTE PTR -10[rbp], al
	movzx	edx, BYTE PTR -25[rbp]
	movzx	eax, BYTE PTR -121[rbp]
	xor	eax, edx
	mov	BYTE PTR -9[rbp], al
	movzx	edx, BYTE PTR -24[rbp]
	movzx	eax, BYTE PTR -120[rbp]
	xor	eax, edx
	mov	BYTE PTR -8[rbp], al
	movzx	edx, BYTE PTR -23[rbp]
	movzx	eax, BYTE PTR -119[rbp]
	xor	eax, edx
	mov	BYTE PTR -7[rbp], al
	movzx	edx, BYTE PTR -22[rbp]
	movzx	eax, BYTE PTR -118[rbp]
	xor	eax, edx
	mov	BYTE PTR -6[rbp], al
	movzx	edx, BYTE PTR -21[rbp]
	movzx	eax, BYTE PTR -117[rbp]
	xor	eax, edx
	mov	BYTE PTR -5[rbp], al
	movzx	edx, BYTE PTR -20[rbp]
	movzx	eax, BYTE PTR -116[rbp]
	xor	eax, edx
	mov	BYTE PTR -4[rbp], al
	movzx	edx, BYTE PTR -19[rbp]
	movzx	eax, BYTE PTR -115[rbp]
	xor	eax, edx
	mov	BYTE PTR -3[rbp], al
	movzx	edx, BYTE PTR -18[rbp]
	movzx	eax, BYTE PTR -114[rbp]
	xor	eax, edx
	mov	BYTE PTR -2[rbp], al
	movzx	edx, BYTE PTR -17[rbp]
	movzx	eax, BYTE PTR -113[rbp]
	xor	eax, edx
	mov	BYTE PTR -1[rbp], al
	mov	rax, QWORD PTR -16[rbp]
	mov	rdx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE2:
	.size	AES128_decrypt, .-AES128_decrypt
	.section	.rodata
.LC1:
	.string	"ECB encrypt verbose:\n"
.LC2:
	.string	"plain text:"
.LC3:
	.string	""
.LC4:
	.string	"key:\n"
.LC5:
	.string	"ciphertext:"
	.text
	.type	test_encrypt_ecb_verbose, @function
test_encrypt_ecb_verbose:
.LFB3:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 120
	.cfi_offset 3, -24
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -24[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -112[rbp], 43
	mov	BYTE PTR -111[rbp], 126
	mov	BYTE PTR -110[rbp], 21
	mov	BYTE PTR -109[rbp], 22
	mov	BYTE PTR -108[rbp], 40
	mov	BYTE PTR -107[rbp], -82
	mov	BYTE PTR -106[rbp], -46
	mov	BYTE PTR -105[rbp], -90
	mov	BYTE PTR -104[rbp], -85
	mov	BYTE PTR -103[rbp], -9
	mov	BYTE PTR -102[rbp], 21
	mov	BYTE PTR -101[rbp], -120
	mov	BYTE PTR -100[rbp], 9
	mov	BYTE PTR -99[rbp], -49
	mov	BYTE PTR -98[rbp], 79
	mov	BYTE PTR -97[rbp], 60
	mov	BYTE PTR -96[rbp], 107
	mov	BYTE PTR -95[rbp], -63
	mov	BYTE PTR -94[rbp], -66
	mov	BYTE PTR -93[rbp], -30
	mov	BYTE PTR -92[rbp], 46
	mov	BYTE PTR -91[rbp], 64
	mov	BYTE PTR -90[rbp], -97
	mov	BYTE PTR -89[rbp], -106
	mov	BYTE PTR -88[rbp], -23
	mov	BYTE PTR -87[rbp], 61
	mov	BYTE PTR -86[rbp], 126
	mov	BYTE PTR -85[rbp], 17
	mov	BYTE PTR -84[rbp], 115
	mov	BYTE PTR -83[rbp], -109
	mov	BYTE PTR -82[rbp], 23
	mov	BYTE PTR -81[rbp], 42
	mov	BYTE PTR -80[rbp], -82
	mov	BYTE PTR -79[rbp], 45
	mov	BYTE PTR -78[rbp], -118
	mov	BYTE PTR -77[rbp], 87
	mov	BYTE PTR -76[rbp], 30
	mov	BYTE PTR -75[rbp], 3
	mov	BYTE PTR -74[rbp], -84
	mov	BYTE PTR -73[rbp], -100
	mov	BYTE PTR -72[rbp], -98
	mov	BYTE PTR -71[rbp], -73
	mov	BYTE PTR -70[rbp], 111
	mov	BYTE PTR -69[rbp], -84
	mov	BYTE PTR -68[rbp], 69
	mov	BYTE PTR -67[rbp], -81
	mov	BYTE PTR -66[rbp], -114
	mov	BYTE PTR -65[rbp], 81
	mov	BYTE PTR -64[rbp], 48
	mov	BYTE PTR -63[rbp], -56
	mov	BYTE PTR -62[rbp], 28
	mov	BYTE PTR -61[rbp], 70
	mov	BYTE PTR -60[rbp], -93
	mov	BYTE PTR -59[rbp], 92
	mov	BYTE PTR -58[rbp], -28
	mov	BYTE PTR -57[rbp], 17
	mov	BYTE PTR -56[rbp], -27
	mov	BYTE PTR -55[rbp], -5
	mov	BYTE PTR -54[rbp], -63
	mov	BYTE PTR -53[rbp], 25
	mov	BYTE PTR -52[rbp], 26
	mov	BYTE PTR -51[rbp], 10
	mov	BYTE PTR -50[rbp], 82
	mov	BYTE PTR -49[rbp], -17
	mov	BYTE PTR -48[rbp], -10
	mov	BYTE PTR -47[rbp], -97
	mov	BYTE PTR -46[rbp], 36
	mov	BYTE PTR -45[rbp], 69
	mov	BYTE PTR -44[rbp], -33
	mov	BYTE PTR -43[rbp], 79
	mov	BYTE PTR -42[rbp], -101
	mov	BYTE PTR -41[rbp], 23
	mov	BYTE PTR -40[rbp], -83
	mov	BYTE PTR -39[rbp], 43
	mov	BYTE PTR -38[rbp], 65
	mov	BYTE PTR -37[rbp], 123
	mov	BYTE PTR -36[rbp], -26
	mov	BYTE PTR -35[rbp], 108
	mov	BYTE PTR -34[rbp], 55
	mov	BYTE PTR -33[rbp], 16
	lea	rdi, .LC1[rip]
	call	puts@PLT
	lea	rdi, .LC2[rip]
	call	puts@PLT
	mov	BYTE PTR -113[rbp], 0
	jmp	.L13
.L14:
	movzx	eax, BYTE PTR -113[rbp]
	cdqe
	sal	rax, 4
	lea	rax, -16[rax]
	add	rax, rbp
	sub	rax, 80
	mov	rdx, QWORD PTR [rax]
	mov	rax, QWORD PTR 8[rax]
	mov	rsi, rdx
	mov	rdx, rax
	lea	rdi, .LC3[rip]
	call	printstate
	add	BYTE PTR -113[rbp], 1
.L13:
	cmp	BYTE PTR -113[rbp], 3
	jbe	.L14
	mov	edi, 10
	call	putchar@PLT
	mov	rdx, QWORD PTR -112[rbp]
	mov	rax, QWORD PTR -104[rbp]
	mov	rsi, rdx
	mov	rdx, rax
	lea	rdi, .LC4[rip]
	call	printstate
	mov	edi, 10
	call	putchar@PLT
	lea	rdi, .LC5[rip]
	call	puts@PLT
	mov	BYTE PTR -113[rbp], 0
	jmp	.L15
.L16:
	movzx	ecx, BYTE PTR -113[rbp]
	mov	rax, QWORD PTR -112[rbp]
	mov	rdx, QWORD PTR -104[rbp]
	movsx	rcx, ecx
	sal	rcx, 4
	lea	rbx, -16[rcx]
	lea	rcx, [rbx+rbp]
	sub	rcx, 80
	mov	rdi, QWORD PTR [rcx]
	mov	rsi, QWORD PTR 8[rcx]
	mov	rcx, rdx
	mov	rdx, rax
	call	AES128_encrypt
	mov	rcx, rax
	mov	rbx, rdx
	mov	rax, rdx
	mov	rsi, rcx
	mov	rdx, rax
	lea	rdi, .LC3[rip]
	call	printstate
	add	BYTE PTR -113[rbp], 1
.L15:
	cmp	BYTE PTR -113[rbp], 3
	jbe	.L16
	mov	edi, 10
	call	putchar@PLT
	nop
	mov	rax, QWORD PTR -24[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L17
	call	__stack_chk_fail@PLT
.L17:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE3:
	.size	test_encrypt_ecb_verbose, .-test_encrypt_ecb_verbose
	.section	.rodata
.LC6:
	.string	"ECB encrypt: "
.LC7:
	.string	"SUCCESS!"
.LC8:
	.string	"FAILURE!"
.LC9:
	.string	"Expected:\n"
.LC10:
	.string	"Result:\n"
	.text
	.globl	test_encrypt_ecb
	.type	test_encrypt_ecb, @function
test_encrypt_ecb:
.LFB4:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -80[rbp], 43
	mov	BYTE PTR -79[rbp], 126
	mov	BYTE PTR -78[rbp], 21
	mov	BYTE PTR -77[rbp], 22
	mov	BYTE PTR -76[rbp], 40
	mov	BYTE PTR -75[rbp], -82
	mov	BYTE PTR -74[rbp], -46
	mov	BYTE PTR -73[rbp], -90
	mov	BYTE PTR -72[rbp], -85
	mov	BYTE PTR -71[rbp], -9
	mov	BYTE PTR -70[rbp], 21
	mov	BYTE PTR -69[rbp], -120
	mov	BYTE PTR -68[rbp], 9
	mov	BYTE PTR -67[rbp], -49
	mov	BYTE PTR -66[rbp], 79
	mov	BYTE PTR -65[rbp], 60
	mov	BYTE PTR -64[rbp], 107
	mov	BYTE PTR -63[rbp], -63
	mov	BYTE PTR -62[rbp], -66
	mov	BYTE PTR -61[rbp], -30
	mov	BYTE PTR -60[rbp], 46
	mov	BYTE PTR -59[rbp], 64
	mov	BYTE PTR -58[rbp], -97
	mov	BYTE PTR -57[rbp], -106
	mov	BYTE PTR -56[rbp], -23
	mov	BYTE PTR -55[rbp], 61
	mov	BYTE PTR -54[rbp], 126
	mov	BYTE PTR -53[rbp], 17
	mov	BYTE PTR -52[rbp], 115
	mov	BYTE PTR -51[rbp], -109
	mov	BYTE PTR -50[rbp], 23
	mov	BYTE PTR -49[rbp], 42
	mov	BYTE PTR -48[rbp], 58
	mov	BYTE PTR -47[rbp], -41
	mov	BYTE PTR -46[rbp], 123
	mov	BYTE PTR -45[rbp], -76
	mov	BYTE PTR -44[rbp], 13
	mov	BYTE PTR -43[rbp], 122
	mov	BYTE PTR -42[rbp], 54
	mov	BYTE PTR -41[rbp], 96
	mov	BYTE PTR -40[rbp], -88
	mov	BYTE PTR -39[rbp], -98
	mov	BYTE PTR -38[rbp], -54
	mov	BYTE PTR -37[rbp], -13
	mov	BYTE PTR -36[rbp], 36
	mov	BYTE PTR -35[rbp], 102
	mov	BYTE PTR -34[rbp], -17
	mov	BYTE PTR -33[rbp], -105
	mov	rax, QWORD PTR -80[rbp]
	mov	rdx, QWORD PTR -72[rbp]
	mov	rdi, QWORD PTR -64[rbp]
	mov	rsi, QWORD PTR -56[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	call	AES128_encrypt
	mov	QWORD PTR -32[rbp], rax
	mov	QWORD PTR -24[rbp], rdx
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rcx, -32[rbp]
	lea	rax, -48[rbp]
	mov	edx, 16
	mov	rsi, rcx
	mov	rdi, rax
	call	memcmp@PLT
	test	eax, eax
	jne	.L19
	lea	rdi, .LC7[rip]
	call	puts@PLT
	jmp	.L22
.L19:
	lea	rdi, .LC8[rip]
	call	puts@PLT
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdx, rax
	lea	rdi, .LC9[rip]
	call	printstate
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdx, rax
	lea	rdi, .LC10[rip]
	call	printstate
.L22:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L21
	call	__stack_chk_fail@PLT
.L21:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE4:
	.size	test_encrypt_ecb, .-test_encrypt_ecb
	.section	.rodata
.LC11:
	.string	"ECB decrypt: "
	.text
	.type	test_decrypt_ecb, @function
test_decrypt_ecb:
.LFB5:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 80
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR -8[rbp], rax
	xor	eax, eax
	mov	BYTE PTR -80[rbp], 43
	mov	BYTE PTR -79[rbp], 126
	mov	BYTE PTR -78[rbp], 21
	mov	BYTE PTR -77[rbp], 22
	mov	BYTE PTR -76[rbp], 40
	mov	BYTE PTR -75[rbp], -82
	mov	BYTE PTR -74[rbp], -46
	mov	BYTE PTR -73[rbp], -90
	mov	BYTE PTR -72[rbp], -85
	mov	BYTE PTR -71[rbp], -9
	mov	BYTE PTR -70[rbp], 21
	mov	BYTE PTR -69[rbp], -120
	mov	BYTE PTR -68[rbp], 9
	mov	BYTE PTR -67[rbp], -49
	mov	BYTE PTR -66[rbp], 79
	mov	BYTE PTR -65[rbp], 60
	mov	BYTE PTR -64[rbp], 58
	mov	BYTE PTR -63[rbp], -41
	mov	BYTE PTR -62[rbp], 123
	mov	BYTE PTR -61[rbp], -76
	mov	BYTE PTR -60[rbp], 13
	mov	BYTE PTR -59[rbp], 122
	mov	BYTE PTR -58[rbp], 54
	mov	BYTE PTR -57[rbp], 96
	mov	BYTE PTR -56[rbp], -88
	mov	BYTE PTR -55[rbp], -98
	mov	BYTE PTR -54[rbp], -54
	mov	BYTE PTR -53[rbp], -13
	mov	BYTE PTR -52[rbp], 36
	mov	BYTE PTR -51[rbp], 102
	mov	BYTE PTR -50[rbp], -17
	mov	BYTE PTR -49[rbp], -105
	mov	BYTE PTR -48[rbp], 107
	mov	BYTE PTR -47[rbp], -63
	mov	BYTE PTR -46[rbp], -66
	mov	BYTE PTR -45[rbp], -30
	mov	BYTE PTR -44[rbp], 46
	mov	BYTE PTR -43[rbp], 64
	mov	BYTE PTR -42[rbp], -97
	mov	BYTE PTR -41[rbp], -106
	mov	BYTE PTR -40[rbp], -23
	mov	BYTE PTR -39[rbp], 61
	mov	BYTE PTR -38[rbp], 126
	mov	BYTE PTR -37[rbp], 17
	mov	BYTE PTR -36[rbp], 115
	mov	BYTE PTR -35[rbp], -109
	mov	BYTE PTR -34[rbp], 23
	mov	BYTE PTR -33[rbp], 42
	mov	rax, QWORD PTR -80[rbp]
	mov	rdx, QWORD PTR -72[rbp]
	mov	rdi, QWORD PTR -64[rbp]
	mov	rsi, QWORD PTR -56[rbp]
	mov	rcx, rdx
	mov	rdx, rax
	call	AES128_decrypt
	mov	QWORD PTR -32[rbp], rax
	mov	QWORD PTR -24[rbp], rdx
	lea	rdi, .LC11[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rcx, -32[rbp]
	lea	rax, -48[rbp]
	mov	edx, 16
	mov	rsi, rcx
	mov	rdi, rax
	call	memcmp@PLT
	test	eax, eax
	jne	.L24
	lea	rdi, .LC7[rip]
	call	puts@PLT
	jmp	.L27
.L24:
	lea	rdi, .LC8[rip]
	call	puts@PLT
	mov	rdx, QWORD PTR -48[rbp]
	mov	rax, QWORD PTR -40[rbp]
	mov	rsi, rdx
	mov	rdx, rax
	lea	rdi, .LC9[rip]
	call	printstate
	mov	rdx, QWORD PTR -32[rbp]
	mov	rax, QWORD PTR -24[rbp]
	mov	rsi, rdx
	mov	rdx, rax
	lea	rdi, .LC10[rip]
	call	printstate
.L27:
	nop
	mov	rax, QWORD PTR -8[rbp]
	sub	rax, QWORD PTR fs:40
	je	.L26
	call	__stack_chk_fail@PLT
.L26:
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE5:
	.size	test_decrypt_ecb, .-test_decrypt_ecb
	.globl	main
	.type	main, @function
main:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	call	test_encrypt_ecb
	call	test_decrypt_ecb
	call	test_encrypt_ecb_verbose
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	main, .-main
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"333208.c"
	.text
	.global	sbox
	.section	.rodata
	.align	2
	.type	sbox, %object
	.size	sbox, 256
sbox:
	.ascii	"c|w{\362ko\3050\001g+\376\327\253v\312\202\311}\372"
	.ascii	"YG\360\255\324\242\257\234\244r\300\267\375\223&6?\367"
	.ascii	"\3144\245\345\361q\3301\025\004\307#\303\030\226\005"
	.ascii	"\232\007\022\200\342\353'\262u\011\203,\032\033nZ\240"
	.ascii	"R;\326\263)\343/\204S\321\000\355 \374\261[j\313\276"
	.ascii	"9JLX\317\320\357\252\373CM3\205E\371\002\177P<\237\250"
	.ascii	"Q\243@\217\222\2358\365\274\266\332!\020\377\363\322"
	.ascii	"\315\014\023\354_\227D\027\304\247~=d]\031s`\201O\334"
	.ascii	"\"*\220\210F\356\270\024\336^\013\333\3402:\012I\006"
	.ascii	"$\\\302\323\254b\221\225\344y\347\3107m\215\325N\251"
	.ascii	"lV\364\352ez\256\010\272x%.\034\246\264\306\350\335"
	.ascii	"t\037K\275\213\212p>\265fH\003\366\016a5W\271\206\301"
	.ascii	"\035\236\341\370\230\021i\331\216\224\233\036\207\351"
	.ascii	"\316U(\337\214\241\211\015\277\346BhA\231-\017\260T"
	.ascii	"\273\026"
	.global	rsbox
	.align	2
	.type	rsbox, %object
	.size	rsbox, 256
rsbox:
	.ascii	"R\011j\32506\2458\277@\243\236\201\363\327\373|\343"
	.ascii	"9\202\233/\377\2074\216CD\304\336\351\313T{\2242\246"
	.ascii	"\302#=\356L\225\013B\372\303N\010.\241f(\331$\262v["
	.ascii	"\242Im\213\321%r\370\366d\206h\230\026\324\244\\\314"
	.ascii	"]e\266\222lpHP\375\355\271\332^\025FW\247\215\235\204"
	.ascii	"\220\330\253\000\214\274\323\012\367\344X\005\270\263"
	.ascii	"E\006\320,\036\217\312?\017\002\301\257\275\003\001"
	.ascii	"\023\212k:\221\021AOg\334\352\227\362\317\316\360\264"
	.ascii	"\346s\226\254t\"\347\2555\205\342\3717\350\034u\337"
	.ascii	"nG\361\032q\035)\305\211o\267b\016\252\030\276\033\374"
	.ascii	"V>K\306\322y \232\333\300\376x\315Z\364\037\335\250"
	.ascii	"3\210\007\3071\261\022\020Y'\200\354_`Q\177\251\031"
	.ascii	"\265J\015-\345z\237\223\311\234\357\240\340;M\256*\365"
	.ascii	"\260\310\353\273<\203S\231a\027+\004~\272w\326&\341"
	.ascii	"i\024cU!\014}"
	.global	Rcon
	.align	2
	.type	Rcon, %object
	.size	Rcon, 255
Rcon:
	.ascii	"\215\001\002\004\010\020 @\200\0336l\330\253M\232/^"
	.ascii	"\274c\306\2275j\324\263}\372\357\305\2219r\344\323\275"
	.ascii	"a\302\237%J\2243f\314\203\035:t\350\313\215\001\002"
	.ascii	"\004\010\020 @\200\0336l\330\253M\232/^\274c\306\227"
	.ascii	"5j\324\263}\372\357\305\2219r\344\323\275a\302\237%"
	.ascii	"J\2243f\314\203\035:t\350\313\215\001\002\004\010\020"
	.ascii	" @\200\0336l\330\253M\232/^\274c\306\2275j\324\263}"
	.ascii	"\372\357\305\2219r\344\323\275a\302\237%J\2243f\314"
	.ascii	"\203\035:t\350\313\215\001\002\004\010\020 @\200\033"
	.ascii	"6l\330\253M\232/^\274c\306\2275j\324\263}\372\357\305"
	.ascii	"\2219r\344\323\275a\302\237%J\2243f\314\203\035:t\350"
	.ascii	"\313\215\001\002\004\010\020 @\200\0336l\330\253M\232"
	.ascii	"/^\274c\306\2275j\324\263}\372\357\305\2219r\344\323"
	.ascii	"\275a\302\237%J\2243f\314\203\035:t\350\313"
	.align	2
.LC4:
	.ascii	"%s%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%"
	.ascii	"02x%02x%02x%02x\012\000"
	.text
	.align	2
	.global	printstate
	.syntax unified
	.arm
	.fpu softvfp
	.type	printstate, %function
printstate:
	@ args = 20, pretend = 16, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	sub	sp, sp, #16
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	fp, sp, #32
	sub	sp, sp, #76
	str	r0, [fp, #-40]
	add	r0, fp, #8
	stm	r0, {r1, r2, r3}
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	str	r3, [fp, #-44]
	ldrb	r3, [fp, #9]	@ zero_extendqisi2
	str	r3, [fp, #-48]
	ldrb	r3, [fp, #10]	@ zero_extendqisi2
	mov	r0, r3
	ldrb	r3, [fp, #11]	@ zero_extendqisi2
	mov	ip, r3
	ldrb	r3, [fp, #12]	@ zero_extendqisi2
	mov	lr, r3
	ldrb	r3, [fp, #13]	@ zero_extendqisi2
	mov	r4, r3
	ldrb	r3, [fp, #14]	@ zero_extendqisi2
	mov	r5, r3
	ldrb	r3, [fp, #15]	@ zero_extendqisi2
	mov	r6, r3
	ldrb	r3, [fp, #16]	@ zero_extendqisi2
	mov	r7, r3
	ldrb	r3, [fp, #17]	@ zero_extendqisi2
	mov	r8, r3
	ldrb	r3, [fp, #18]	@ zero_extendqisi2
	mov	r9, r3
	ldrb	r3, [fp, #19]	@ zero_extendqisi2
	mov	r10, r3
	ldrb	r3, [fp, #20]	@ zero_extendqisi2
	str	r3, [fp, #-52]
	ldrb	r3, [fp, #21]	@ zero_extendqisi2
	mov	r1, r3
	ldrb	r3, [fp, #22]	@ zero_extendqisi2
	mov	r2, r3
	ldrb	r3, [fp, #23]	@ zero_extendqisi2
	str	r3, [sp, #52]
	str	r2, [sp, #48]
	str	r1, [sp, #44]
	ldr	r1, [fp, #-52]
	str	r1, [sp, #40]
	str	r10, [sp, #36]
	str	r9, [sp, #32]
	str	r8, [sp, #28]
	str	r7, [sp, #24]
	str	r6, [sp, #20]
	str	r5, [sp, #16]
	str	r4, [sp, #12]
	str	lr, [sp, #8]
	str	ip, [sp, #4]
	str	r0, [sp]
	ldr	r3, [fp, #-48]
	ldr	r2, [fp, #-44]
	ldr	r1, [fp, #-40]
	ldr	r0, .L2
	bl	printf
	nop
	sub	sp, fp, #32
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	add	sp, sp, #16
	bx	lr
.L3:
	.align	2
.L2:
	.word	.LC4
	.size	printstate, .-printstate
	.align	2
	.global	AES128_encrypt
	.syntax unified
	.arm
	.fpu softvfp
	.type	AES128_encrypt, %function
AES128_encrypt:
	@ args = 36, pretend = 16, frame = 152
	@ frame_needed = 1, uses_anonymous_args = 0
	sub	sp, sp, #16
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #152
	str	r0, [fp, #-152]
	add	r0, fp, #8
	stm	r0, {r1, r2, r3}
	mov	r3, #0
	strb	r3, [fp, #-145]
	ldrb	r2, [fp, #8]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-132]
	ldrb	r2, [fp, #9]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-131]
	ldrb	r2, [fp, #10]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-130]
	ldrb	r2, [fp, #11]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-129]
	ldrb	r2, [fp, #12]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-128]
	ldrb	r2, [fp, #13]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-127]
	ldrb	r2, [fp, #14]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-126]
	ldrb	r2, [fp, #15]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-125]
	ldrb	r2, [fp, #16]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-124]
	ldrb	r2, [fp, #17]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-123]
	ldrb	r2, [fp, #18]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-122]
	ldrb	r2, [fp, #19]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-121]
	ldrb	r2, [fp, #20]	@ zero_extendqisi2
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-120]
	ldrb	r2, [fp, #21]	@ zero_extendqisi2
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-119]
	ldrb	r2, [fp, #22]	@ zero_extendqisi2
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-118]
	ldrb	r2, [fp, #23]	@ zero_extendqisi2
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-117]
	add	ip, fp, #8
	sub	r3, fp, #132
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	mov	r3, #1
	strb	r3, [fp, #-145]
	b	.L5
.L6:
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-116]
	ldrb	r3, [fp, #9]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-115]
	ldrb	r3, [fp, #10]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-114]
	ldrb	r3, [fp, #11]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-113]
	ldrb	r3, [fp, #12]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-112]
	ldrb	r3, [fp, #13]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-111]
	ldrb	r3, [fp, #14]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-110]
	ldrb	r3, [fp, #15]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-109]
	ldrb	r3, [fp, #16]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-108]
	ldrb	r3, [fp, #17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-107]
	ldrb	r3, [fp, #18]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-106]
	ldrb	r3, [fp, #19]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-105]
	ldrb	r3, [fp, #20]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-104]
	ldrb	r3, [fp, #21]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-103]
	ldrb	r3, [fp, #22]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-102]
	ldrb	r3, [fp, #23]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-101]
	ldrb	r3, [fp, #-116]	@ zero_extendqisi2
	strb	r3, [fp, #-100]
	ldrb	r3, [fp, #-111]	@ zero_extendqisi2
	strb	r3, [fp, #-99]
	ldrb	r3, [fp, #-106]	@ zero_extendqisi2
	strb	r3, [fp, #-98]
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	strb	r3, [fp, #-97]
	ldrb	r3, [fp, #-112]	@ zero_extendqisi2
	strb	r3, [fp, #-96]
	ldrb	r3, [fp, #-107]	@ zero_extendqisi2
	strb	r3, [fp, #-95]
	ldrb	r3, [fp, #-102]	@ zero_extendqisi2
	strb	r3, [fp, #-94]
	ldrb	r3, [fp, #-113]	@ zero_extendqisi2
	strb	r3, [fp, #-93]
	ldrb	r3, [fp, #-108]	@ zero_extendqisi2
	strb	r3, [fp, #-92]
	ldrb	r3, [fp, #-103]	@ zero_extendqisi2
	strb	r3, [fp, #-91]
	ldrb	r3, [fp, #-114]	@ zero_extendqisi2
	strb	r3, [fp, #-90]
	ldrb	r3, [fp, #-109]	@ zero_extendqisi2
	strb	r3, [fp, #-89]
	ldrb	r3, [fp, #-104]	@ zero_extendqisi2
	strb	r3, [fp, #-88]
	ldrb	r3, [fp, #-115]	@ zero_extendqisi2
	strb	r3, [fp, #-87]
	ldrb	r3, [fp, #-110]	@ zero_extendqisi2
	strb	r3, [fp, #-86]
	ldrb	r3, [fp, #-105]	@ zero_extendqisi2
	strb	r3, [fp, #-85]
	ldrb	r2, [fp, #-100]	@ zero_extendqisi2
	ldrb	r3, [fp, #-99]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-84]
	ldrb	r2, [fp, #-99]	@ zero_extendqisi2
	ldrb	r3, [fp, #-98]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-83]
	ldrb	r2, [fp, #-98]	@ zero_extendqisi2
	ldrb	r3, [fp, #-97]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-82]
	ldrb	r2, [fp, #-97]	@ zero_extendqisi2
	ldrb	r3, [fp, #-100]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-81]
	ldrb	r2, [fp, #-96]	@ zero_extendqisi2
	ldrb	r3, [fp, #-95]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-80]
	ldrb	r2, [fp, #-95]	@ zero_extendqisi2
	ldrb	r3, [fp, #-94]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-79]
	ldrb	r2, [fp, #-94]	@ zero_extendqisi2
	ldrb	r3, [fp, #-93]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-78]
	ldrb	r2, [fp, #-93]	@ zero_extendqisi2
	ldrb	r3, [fp, #-96]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-77]
	ldrb	r2, [fp, #-92]	@ zero_extendqisi2
	ldrb	r3, [fp, #-91]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-76]
	ldrb	r2, [fp, #-91]	@ zero_extendqisi2
	ldrb	r3, [fp, #-90]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-75]
	ldrb	r2, [fp, #-90]	@ zero_extendqisi2
	ldrb	r3, [fp, #-89]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-74]
	ldrb	r2, [fp, #-89]	@ zero_extendqisi2
	ldrb	r3, [fp, #-92]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-73]
	ldrb	r2, [fp, #-88]	@ zero_extendqisi2
	ldrb	r3, [fp, #-87]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-72]
	ldrb	r2, [fp, #-87]	@ zero_extendqisi2
	ldrb	r3, [fp, #-86]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-71]
	ldrb	r2, [fp, #-86]	@ zero_extendqisi2
	ldrb	r3, [fp, #-85]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-70]
	ldrb	r2, [fp, #-85]	@ zero_extendqisi2
	ldrb	r3, [fp, #-88]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-69]
	ldrb	r3, [fp, #-84]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-84]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-68]
	ldrb	r3, [fp, #-83]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-83]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-67]
	ldrb	r3, [fp, #-82]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-82]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-66]
	ldrb	r3, [fp, #-81]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-81]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-65]
	ldrb	r3, [fp, #-80]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-80]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-64]
	ldrb	r3, [fp, #-79]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-79]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-63]
	ldrb	r3, [fp, #-78]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-78]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-62]
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-77]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-61]
	ldrb	r3, [fp, #-76]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-76]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-60]
	ldrb	r3, [fp, #-75]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-75]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-59]
	ldrb	r3, [fp, #-74]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-74]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-58]
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-57]
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-56]
	ldrb	r3, [fp, #-71]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-71]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-55]
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-54]
	ldrb	r3, [fp, #-69]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-69]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-53]
	ldrb	r2, [fp, #-100]	@ zero_extendqisi2
	ldrb	r3, [fp, #-99]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-98]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-97]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-144]
	ldrb	r2, [fp, #-96]	@ zero_extendqisi2
	ldrb	r3, [fp, #-95]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-94]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-93]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-143]
	ldrb	r2, [fp, #-92]	@ zero_extendqisi2
	ldrb	r3, [fp, #-91]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-90]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-89]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-142]
	ldrb	r2, [fp, #-88]	@ zero_extendqisi2
	ldrb	r3, [fp, #-87]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-86]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r2, r3, #255
	ldrb	r3, [fp, #-85]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-141]
	ldrb	r2, [fp, #-68]	@ zero_extendqisi2
	ldrb	r3, [fp, #-144]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-52]
	ldrb	r2, [fp, #-67]	@ zero_extendqisi2
	ldrb	r3, [fp, #-144]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-51]
	ldrb	r2, [fp, #-66]	@ zero_extendqisi2
	ldrb	r3, [fp, #-144]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-50]
	ldrb	r2, [fp, #-65]	@ zero_extendqisi2
	ldrb	r3, [fp, #-144]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-49]
	ldrb	r2, [fp, #-64]	@ zero_extendqisi2
	ldrb	r3, [fp, #-143]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-48]
	ldrb	r2, [fp, #-63]	@ zero_extendqisi2
	ldrb	r3, [fp, #-143]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-47]
	ldrb	r2, [fp, #-62]	@ zero_extendqisi2
	ldrb	r3, [fp, #-143]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-46]
	ldrb	r2, [fp, #-61]	@ zero_extendqisi2
	ldrb	r3, [fp, #-143]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-45]
	ldrb	r2, [fp, #-60]	@ zero_extendqisi2
	ldrb	r3, [fp, #-142]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-44]
	ldrb	r2, [fp, #-59]	@ zero_extendqisi2
	ldrb	r3, [fp, #-142]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-43]
	ldrb	r2, [fp, #-58]	@ zero_extendqisi2
	ldrb	r3, [fp, #-142]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-42]
	ldrb	r2, [fp, #-57]	@ zero_extendqisi2
	ldrb	r3, [fp, #-142]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-41]
	ldrb	r2, [fp, #-56]	@ zero_extendqisi2
	ldrb	r3, [fp, #-141]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-40]
	ldrb	r2, [fp, #-55]	@ zero_extendqisi2
	ldrb	r3, [fp, #-141]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-39]
	ldrb	r2, [fp, #-54]	@ zero_extendqisi2
	ldrb	r3, [fp, #-141]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-38]
	ldrb	r2, [fp, #-53]	@ zero_extendqisi2
	ldrb	r3, [fp, #-141]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-37]
	ldrb	r2, [fp, #-100]	@ zero_extendqisi2
	ldrb	r3, [fp, #-52]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-36]
	ldrb	r2, [fp, #-99]	@ zero_extendqisi2
	ldrb	r3, [fp, #-51]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-35]
	ldrb	r2, [fp, #-98]	@ zero_extendqisi2
	ldrb	r3, [fp, #-50]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-34]
	ldrb	r2, [fp, #-97]	@ zero_extendqisi2
	ldrb	r3, [fp, #-49]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-33]
	ldrb	r2, [fp, #-96]	@ zero_extendqisi2
	ldrb	r3, [fp, #-48]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-32]
	ldrb	r2, [fp, #-95]	@ zero_extendqisi2
	ldrb	r3, [fp, #-47]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-31]
	ldrb	r2, [fp, #-94]	@ zero_extendqisi2
	ldrb	r3, [fp, #-46]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-30]
	ldrb	r2, [fp, #-93]	@ zero_extendqisi2
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-29]
	ldrb	r2, [fp, #-92]	@ zero_extendqisi2
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-28]
	ldrb	r2, [fp, #-91]	@ zero_extendqisi2
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-27]
	ldrb	r2, [fp, #-90]	@ zero_extendqisi2
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-26]
	ldrb	r2, [fp, #-89]	@ zero_extendqisi2
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-25]
	ldrb	r2, [fp, #-88]	@ zero_extendqisi2
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-24]
	ldrb	r2, [fp, #-87]	@ zero_extendqisi2
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-23]
	ldrb	r2, [fp, #-86]	@ zero_extendqisi2
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-22]
	ldrb	r2, [fp, #-85]	@ zero_extendqisi2
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	strb	r3, [fp, #-140]
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	strb	r3, [fp, #-139]
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	strb	r3, [fp, #-138]
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	strb	r3, [fp, #-137]
	ldrb	r3, [fp, #-140]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-136]
	ldrb	r3, [fp, #-139]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-135]
	ldrb	r3, [fp, #-138]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-134]
	ldrb	r3, [fp, #-137]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-133]
	ldrb	r2, [fp, #-136]	@ zero_extendqisi2
	ldrb	r3, [fp, #-145]	@ zero_extendqisi2
	ldr	r1, .L8+8
	ldrb	r3, [r1, r3]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-136]
	ldrb	r2, [fp, #24]	@ zero_extendqisi2
	ldrb	r3, [fp, #-136]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #24]
	ldrb	r2, [fp, #25]	@ zero_extendqisi2
	ldrb	r3, [fp, #-135]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #25]
	ldrb	r2, [fp, #26]	@ zero_extendqisi2
	ldrb	r3, [fp, #-134]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #26]
	ldrb	r2, [fp, #27]	@ zero_extendqisi2
	ldrb	r3, [fp, #-133]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #27]
	ldrb	r2, [fp, #28]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #28]
	ldrb	r2, [fp, #29]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #29]
	ldrb	r2, [fp, #30]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #30]
	ldrb	r2, [fp, #31]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #31]
	ldrb	r2, [fp, #32]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #32]
	ldrb	r2, [fp, #33]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #33]
	ldrb	r2, [fp, #34]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #34]
	ldrb	r2, [fp, #35]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #35]
	ldrb	r2, [fp, #36]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #36]
	ldrb	r2, [fp, #37]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #37]
	ldrb	r2, [fp, #38]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #38]
	ldrb	r2, [fp, #39]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #39]
	ldrb	r2, [fp, #-36]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-20]
	ldrb	r2, [fp, #-35]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-19]
	ldrb	r2, [fp, #-34]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-18]
	ldrb	r2, [fp, #-33]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-17]
	ldrb	r2, [fp, #-32]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-16]
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-15]
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-13]
	ldrb	r2, [fp, #-28]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-12]
	ldrb	r2, [fp, #-27]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-11]
	ldrb	r2, [fp, #-26]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-10]
	ldrb	r2, [fp, #-25]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-9]
	ldrb	r2, [fp, #-24]	@ zero_extendqisi2
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-8]
	ldrb	r2, [fp, #-23]	@ zero_extendqisi2
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-7]
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-5]
	add	ip, fp, #8
	sub	r3, fp, #20
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldrb	r3, [fp, #-145]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-145]
.L5:
	ldrb	r3, [fp, #-145]	@ zero_extendqisi2
	cmp	r3, #9
	bls	.L6
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-52]
	ldrb	r3, [fp, #9]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-51]
	ldrb	r3, [fp, #10]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-50]
	ldrb	r3, [fp, #11]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-49]
	ldrb	r3, [fp, #12]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-48]
	ldrb	r3, [fp, #13]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-47]
	ldrb	r3, [fp, #14]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-46]
	ldrb	r3, [fp, #15]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-45]
	ldrb	r3, [fp, #16]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-44]
	ldrb	r3, [fp, #17]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-43]
	ldrb	r3, [fp, #18]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-42]
	ldrb	r3, [fp, #19]	@ zero_extendqisi2
	b	.L9
.L10:
	.align	2
.L8:
	.word	sbox
	.word	sbox
	.word	Rcon
.L9:
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-41]
	ldrb	r3, [fp, #20]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-40]
	ldrb	r3, [fp, #21]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-39]
	ldrb	r3, [fp, #22]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-38]
	ldrb	r3, [fp, #23]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-37]
	ldrb	r3, [fp, #-52]	@ zero_extendqisi2
	strb	r3, [fp, #-36]
	ldrb	r3, [fp, #-47]	@ zero_extendqisi2
	strb	r3, [fp, #-35]
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	strb	r3, [fp, #-34]
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	strb	r3, [fp, #-33]
	ldrb	r3, [fp, #-48]	@ zero_extendqisi2
	strb	r3, [fp, #-32]
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	strb	r3, [fp, #-31]
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	strb	r3, [fp, #-30]
	ldrb	r3, [fp, #-49]	@ zero_extendqisi2
	strb	r3, [fp, #-29]
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	strb	r3, [fp, #-28]
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	strb	r3, [fp, #-27]
	ldrb	r3, [fp, #-50]	@ zero_extendqisi2
	strb	r3, [fp, #-26]
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	strb	r3, [fp, #-25]
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	strb	r3, [fp, #-24]
	ldrb	r3, [fp, #-51]	@ zero_extendqisi2
	strb	r3, [fp, #-23]
	ldrb	r3, [fp, #-46]	@ zero_extendqisi2
	strb	r3, [fp, #-22]
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	strb	r3, [fp, #-84]
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	strb	r3, [fp, #-83]
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	strb	r3, [fp, #-82]
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	strb	r3, [fp, #-81]
	ldrb	r3, [fp, #-84]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-68]
	ldrb	r3, [fp, #-83]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-67]
	ldrb	r3, [fp, #-82]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-66]
	ldrb	r3, [fp, #-81]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L8+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-65]
	ldrb	r2, [fp, #-68]	@ zero_extendqisi2
	ldrb	r3, [fp, #-145]	@ zero_extendqisi2
	ldr	r1, .L8+8
	ldrb	r3, [r1, r3]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-68]
	ldrb	r2, [fp, #24]	@ zero_extendqisi2
	ldrb	r3, [fp, #-68]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #24]
	ldrb	r2, [fp, #25]	@ zero_extendqisi2
	ldrb	r3, [fp, #-67]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #25]
	ldrb	r2, [fp, #26]	@ zero_extendqisi2
	ldrb	r3, [fp, #-66]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #26]
	ldrb	r2, [fp, #27]	@ zero_extendqisi2
	ldrb	r3, [fp, #-65]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #27]
	ldrb	r2, [fp, #28]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #28]
	ldrb	r2, [fp, #29]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #29]
	ldrb	r2, [fp, #30]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #30]
	ldrb	r2, [fp, #31]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #31]
	ldrb	r2, [fp, #32]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #32]
	ldrb	r2, [fp, #33]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #33]
	ldrb	r2, [fp, #34]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #34]
	ldrb	r2, [fp, #35]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #35]
	ldrb	r2, [fp, #36]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #36]
	ldrb	r2, [fp, #37]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #37]
	ldrb	r2, [fp, #38]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #38]
	ldrb	r2, [fp, #39]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #39]
	ldrb	r2, [fp, #-36]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-20]
	ldrb	r2, [fp, #-35]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-19]
	ldrb	r2, [fp, #-34]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-18]
	ldrb	r2, [fp, #-33]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-17]
	ldrb	r2, [fp, #-32]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-16]
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-15]
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-13]
	ldrb	r2, [fp, #-28]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-12]
	ldrb	r2, [fp, #-27]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-11]
	ldrb	r2, [fp, #-26]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-10]
	ldrb	r2, [fp, #-25]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-9]
	ldrb	r2, [fp, #-24]	@ zero_extendqisi2
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-8]
	ldrb	r2, [fp, #-23]	@ zero_extendqisi2
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-7]
	ldrb	r2, [fp, #-22]	@ zero_extendqisi2
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-6]
	ldrb	r2, [fp, #-21]	@ zero_extendqisi2
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-5]
	ldr	r3, [fp, #-152]
	mov	r0, r3
	sub	r3, fp, #20
	mov	r2, #16
	mov	r1, r3
	bl	memcpy
	ldr	r0, [fp, #-152]
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, lr}
	add	sp, sp, #16
	bx	lr
	.size	AES128_encrypt, .-AES128_encrypt
	.align	2
	.global	AES128_decrypt
	.syntax unified
	.arm
	.fpu softvfp
	.type	AES128_decrypt, %function
AES128_decrypt:
	@ args = 36, pretend = 16, frame = 104
	@ frame_needed = 1, uses_anonymous_args = 0
	sub	sp, sp, #16
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #108
	str	r0, [fp, #-112]
	add	r0, fp, #8
	stm	r0, {r1, r2, r3}
	mov	r3, #0
	strb	r3, [fp, #-101]
	mov	r3, #1
	strb	r3, [fp, #-101]
	b	.L12
.L13:
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	strb	r3, [fp, #-44]
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	strb	r3, [fp, #-43]
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	strb	r3, [fp, #-42]
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	strb	r3, [fp, #-41]
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-28]
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-27]
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-26]
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-25]
	ldrb	r2, [fp, #-28]	@ zero_extendqisi2
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	ldr	r1, .L17+8
	ldrb	r3, [r1, r3]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-28]
	ldrb	r2, [fp, #24]	@ zero_extendqisi2
	ldrb	r3, [fp, #-28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #24]
	ldrb	r2, [fp, #25]	@ zero_extendqisi2
	ldrb	r3, [fp, #-27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #25]
	ldrb	r2, [fp, #26]	@ zero_extendqisi2
	ldrb	r3, [fp, #-26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #26]
	ldrb	r2, [fp, #27]	@ zero_extendqisi2
	ldrb	r3, [fp, #-25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #27]
	ldrb	r2, [fp, #28]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #28]
	ldrb	r2, [fp, #29]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #29]
	ldrb	r2, [fp, #30]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #30]
	ldrb	r2, [fp, #31]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #31]
	ldrb	r2, [fp, #32]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #32]
	ldrb	r2, [fp, #33]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #33]
	ldrb	r2, [fp, #34]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #34]
	ldrb	r2, [fp, #35]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #35]
	ldrb	r2, [fp, #36]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #36]
	ldrb	r2, [fp, #37]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #37]
	ldrb	r2, [fp, #38]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #38]
	ldrb	r2, [fp, #39]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #39]
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	add	r3, r3, #1
	strb	r3, [fp, #-101]
.L12:
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	cmp	r3, #10
	bls	.L13
	ldrb	r2, [fp, #8]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-92]
	ldrb	r2, [fp, #9]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-91]
	ldrb	r2, [fp, #10]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-90]
	ldrb	r2, [fp, #11]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-89]
	ldrb	r2, [fp, #12]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-88]
	ldrb	r2, [fp, #13]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-87]
	ldrb	r2, [fp, #14]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-86]
	ldrb	r2, [fp, #15]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-85]
	ldrb	r2, [fp, #16]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-84]
	ldrb	r2, [fp, #17]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-83]
	ldrb	r2, [fp, #18]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-82]
	ldrb	r2, [fp, #19]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-81]
	ldrb	r2, [fp, #20]	@ zero_extendqisi2
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-80]
	ldrb	r2, [fp, #21]	@ zero_extendqisi2
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-79]
	ldrb	r2, [fp, #22]	@ zero_extendqisi2
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-78]
	ldrb	r2, [fp, #23]	@ zero_extendqisi2
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-77]
	add	ip, fp, #8
	sub	r3, fp, #92
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	mov	r3, #9
	strb	r3, [fp, #-101]
	b	.L14
.L18:
	.align	2
.L17:
	.word	rsbox
	.word	sbox
	.word	Rcon
.L15:
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	strb	r3, [fp, #-76]
	ldrb	r3, [fp, #21]	@ zero_extendqisi2
	strb	r3, [fp, #-75]
	ldrb	r3, [fp, #18]	@ zero_extendqisi2
	strb	r3, [fp, #-74]
	ldrb	r3, [fp, #15]	@ zero_extendqisi2
	strb	r3, [fp, #-73]
	ldrb	r3, [fp, #12]	@ zero_extendqisi2
	strb	r3, [fp, #-72]
	ldrb	r3, [fp, #9]	@ zero_extendqisi2
	strb	r3, [fp, #-71]
	ldrb	r3, [fp, #22]	@ zero_extendqisi2
	strb	r3, [fp, #-70]
	ldrb	r3, [fp, #19]	@ zero_extendqisi2
	strb	r3, [fp, #-69]
	ldrb	r3, [fp, #16]	@ zero_extendqisi2
	strb	r3, [fp, #-68]
	ldrb	r3, [fp, #13]	@ zero_extendqisi2
	strb	r3, [fp, #-67]
	ldrb	r3, [fp, #10]	@ zero_extendqisi2
	strb	r3, [fp, #-66]
	ldrb	r3, [fp, #23]	@ zero_extendqisi2
	strb	r3, [fp, #-65]
	ldrb	r3, [fp, #20]	@ zero_extendqisi2
	strb	r3, [fp, #-64]
	ldrb	r3, [fp, #17]	@ zero_extendqisi2
	strb	r3, [fp, #-63]
	ldrb	r3, [fp, #14]	@ zero_extendqisi2
	strb	r3, [fp, #-62]
	ldrb	r3, [fp, #11]	@ zero_extendqisi2
	strb	r3, [fp, #-61]
	ldrb	r3, [fp, #-76]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-60]
	ldrb	r3, [fp, #-75]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-59]
	ldrb	r3, [fp, #-74]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-58]
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-57]
	ldrb	r3, [fp, #-72]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-56]
	ldrb	r3, [fp, #-71]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-55]
	ldrb	r3, [fp, #-70]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-54]
	ldrb	r3, [fp, #-69]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-53]
	ldrb	r3, [fp, #-68]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-52]
	ldrb	r3, [fp, #-67]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-51]
	ldrb	r3, [fp, #-66]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-50]
	ldrb	r3, [fp, #-65]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-49]
	ldrb	r3, [fp, #-64]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-48]
	ldrb	r3, [fp, #-63]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-47]
	ldrb	r3, [fp, #-62]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-46]
	ldrb	r3, [fp, #-61]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-45]
	ldrb	r2, [fp, #36]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #36]
	ldrb	r2, [fp, #37]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #37]
	ldrb	r2, [fp, #38]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #38]
	ldrb	r2, [fp, #39]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #39]
	ldrb	r2, [fp, #32]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #32]
	ldrb	r2, [fp, #33]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #33]
	ldrb	r2, [fp, #34]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #34]
	ldrb	r2, [fp, #35]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #35]
	ldrb	r2, [fp, #28]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #28]
	ldrb	r2, [fp, #29]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #29]
	ldrb	r2, [fp, #30]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #30]
	ldrb	r2, [fp, #31]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #31]
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	strb	r3, [fp, #-100]
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	strb	r3, [fp, #-99]
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	strb	r3, [fp, #-98]
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	strb	r3, [fp, #-97]
	ldrb	r3, [fp, #-100]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-96]
	ldrb	r3, [fp, #-99]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-95]
	ldrb	r3, [fp, #-98]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-94]
	ldrb	r3, [fp, #-97]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L17+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-93]
	ldrb	r2, [fp, #-96]	@ zero_extendqisi2
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	add	r3, r3, #1
	ldr	r1, .L17+8
	ldrb	r3, [r1, r3]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-96]
	ldrb	r2, [fp, #24]	@ zero_extendqisi2
	ldrb	r3, [fp, #-96]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #24]
	ldrb	r2, [fp, #25]	@ zero_extendqisi2
	ldrb	r3, [fp, #-95]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #25]
	ldrb	r2, [fp, #26]	@ zero_extendqisi2
	ldrb	r3, [fp, #-94]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #26]
	ldrb	r2, [fp, #27]	@ zero_extendqisi2
	ldrb	r3, [fp, #-93]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #27]
	ldrb	r2, [fp, #-60]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-44]
	ldrb	r2, [fp, #-59]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-43]
	ldrb	r2, [fp, #-58]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-42]
	ldrb	r2, [fp, #-57]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-41]
	ldrb	r2, [fp, #-56]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-40]
	ldrb	r2, [fp, #-55]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-39]
	ldrb	r2, [fp, #-54]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-38]
	ldrb	r2, [fp, #-53]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-37]
	ldrb	r2, [fp, #-52]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-36]
	ldrb	r2, [fp, #-51]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-35]
	ldrb	r2, [fp, #-50]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-34]
	ldrb	r2, [fp, #-49]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-33]
	ldrb	r2, [fp, #-48]	@ zero_extendqisi2
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-32]
	ldrb	r2, [fp, #-47]	@ zero_extendqisi2
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-31]
	ldrb	r2, [fp, #-46]	@ zero_extendqisi2
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-30]
	ldrb	r2, [fp, #-45]	@ zero_extendqisi2
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-29]
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-28]
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-27]
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-26]
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-44]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-43]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-42]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-41]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-25]
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-24]
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-23]
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-22]
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-40]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-39]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-38]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-37]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-21]
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-20]
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-19]
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-18]
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-36]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-35]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-34]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-33]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-17]
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r1, r3
	lsl	r1, r1, #1
	add	r3, r1, r3
	mov	r1, r3
	lsl	r0, r1, #3
	mov	r1, r3
	mov	r3, r0
	add	r3, r1, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-16]
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-15]
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	ip, r3
	lsl	ip, ip, #1
	add	r3, ip, r3
	mov	ip, r3
	lsl	lr, ip, #3
	mov	ip, r3
	mov	r3, lr
	add	r3, ip, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-14]
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r0, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r0
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-32]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	ip, r2, #3
	mov	r2, r3
	mov	r3, ip
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-31]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-30]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r1, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	r2, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	mov	r0, r3
	lsl	r0, r0, #1
	add	r3, r0, r3
	mov	r0, r3
	lsl	ip, r0, #3
	mov	r0, r3
	mov	r3, ip
	add	r3, r0, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r2
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r0, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	ip, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, ip
	lsl	r3, r3, #1
	lsl	r3, r3, #24
	asr	ip, r3, #24
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	lsl	lr, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsl	r4, r3, #1
	ldrb	r3, [fp, #-29]	@ zero_extendqisi2
	lsr	r3, r3, #7
	and	r3, r3, #255
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, r4
	asr	r3, r3, #7
	and	r2, r3, #1
	mov	r3, r2
	lsl	r3, r3, #1
	add	r3, r3, r2
	lsl	r2, r3, #3
	add	r3, r3, r2
	eor	r3, r3, lr
	asr	r3, r3, #7
	and	r3, r3, #255
	and	r3, r3, #1
	and	r3, r3, #255
	mov	r2, r3
	lsl	r2, r2, #1
	add	r3, r2, r3
	mov	r2, r3
	lsl	lr, r2, #3
	mov	r2, r3
	mov	r3, lr
	add	r3, r2, r3
	and	r3, r3, #255
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, ip
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r0
	lsl	r3, r3, #24
	asr	r3, r3, #24
	eor	r3, r3, r1
	lsl	r3, r3, #24
	asr	r3, r3, #24
	and	r3, r3, #255
	strb	r3, [fp, #-13]
	add	ip, fp, #8
	sub	r3, fp, #28
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	sub	r3, r3, #1
	strb	r3, [fp, #-101]
.L14:
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	cmp	r3, #0
	bne	.L15
	ldrb	r3, [fp, #8]	@ zero_extendqisi2
	strb	r3, [fp, #-60]
	ldrb	r3, [fp, #21]	@ zero_extendqisi2
	strb	r3, [fp, #-59]
	ldrb	r3, [fp, #18]	@ zero_extendqisi2
	strb	r3, [fp, #-58]
	ldrb	r3, [fp, #15]	@ zero_extendqisi2
	strb	r3, [fp, #-57]
	ldrb	r3, [fp, #12]	@ zero_extendqisi2
	strb	r3, [fp, #-56]
	ldrb	r3, [fp, #9]	@ zero_extendqisi2
	strb	r3, [fp, #-55]
	ldrb	r3, [fp, #22]	@ zero_extendqisi2
	strb	r3, [fp, #-54]
	ldrb	r3, [fp, #19]	@ zero_extendqisi2
	strb	r3, [fp, #-53]
	ldrb	r3, [fp, #16]	@ zero_extendqisi2
	strb	r3, [fp, #-52]
	ldrb	r3, [fp, #13]	@ zero_extendqisi2
	strb	r3, [fp, #-51]
	ldrb	r3, [fp, #10]	@ zero_extendqisi2
	strb	r3, [fp, #-50]
	ldrb	r3, [fp, #23]	@ zero_extendqisi2
	strb	r3, [fp, #-49]
	ldrb	r3, [fp, #20]	@ zero_extendqisi2
	strb	r3, [fp, #-48]
	ldrb	r3, [fp, #17]	@ zero_extendqisi2
	strb	r3, [fp, #-47]
	ldrb	r3, [fp, #14]	@ zero_extendqisi2
	strb	r3, [fp, #-46]
	ldrb	r3, [fp, #11]	@ zero_extendqisi2
	strb	r3, [fp, #-45]
	ldrb	r3, [fp, #-60]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-44]
	ldrb	r3, [fp, #-59]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-43]
	ldrb	r3, [fp, #-58]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-42]
	ldrb	r3, [fp, #-57]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-41]
	ldrb	r3, [fp, #-56]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-40]
	ldrb	r3, [fp, #-55]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-39]
	ldrb	r3, [fp, #-54]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-38]
	ldrb	r3, [fp, #-53]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-37]
	ldrb	r3, [fp, #-52]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-36]
	ldrb	r3, [fp, #-51]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-35]
	ldrb	r3, [fp, #-50]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-34]
	ldrb	r3, [fp, #-49]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-33]
	ldrb	r3, [fp, #-48]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-32]
	ldrb	r3, [fp, #-47]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-31]
	ldrb	r3, [fp, #-46]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-30]
	ldrb	r3, [fp, #-45]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-29]
	ldrb	r2, [fp, #36]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #36]
	ldrb	r2, [fp, #37]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #37]
	ldrb	r2, [fp, #38]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #38]
	ldrb	r2, [fp, #39]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #39]
	ldrb	r2, [fp, #32]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #32]
	ldrb	r2, [fp, #33]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #33]
	ldrb	r2, [fp, #34]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #34]
	ldrb	r2, [fp, #35]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #35]
	ldrb	r2, [fp, #28]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #28]
	ldrb	r2, [fp, #29]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #29]
	ldrb	r2, [fp, #30]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #30]
	ldrb	r2, [fp, #31]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #31]
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	strb	r3, [fp, #-96]
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	strb	r3, [fp, #-95]
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	strb	r3, [fp, #-94]
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	strb	r3, [fp, #-93]
	ldrb	r3, [fp, #-96]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-76]
	ldrb	r3, [fp, #-95]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-75]
	ldrb	r3, [fp, #-94]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-74]
	ldrb	r3, [fp, #-93]	@ zero_extendqisi2
	mov	r2, r3
	ldr	r3, .L19+4
	ldrb	r3, [r3, r2]	@ zero_extendqisi2
	strb	r3, [fp, #-73]
	ldrb	r2, [fp, #-76]	@ zero_extendqisi2
	ldrb	r3, [fp, #-101]	@ zero_extendqisi2
	add	r3, r3, #1
	ldr	r1, .L19+8
	ldrb	r3, [r1, r3]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-76]
	ldrb	r2, [fp, #24]	@ zero_extendqisi2
	ldrb	r3, [fp, #-76]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #24]
	ldrb	r2, [fp, #25]	@ zero_extendqisi2
	ldrb	r3, [fp, #-75]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #25]
	ldrb	r2, [fp, #26]	@ zero_extendqisi2
	ldrb	r3, [fp, #-74]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #26]
	ldrb	r2, [fp, #27]	@ zero_extendqisi2
	ldrb	r3, [fp, #-73]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #27]
	ldrb	r2, [fp, #-44]	@ zero_extendqisi2
	ldrb	r3, [fp, #24]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-28]
	ldrb	r2, [fp, #-43]	@ zero_extendqisi2
	ldrb	r3, [fp, #25]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-27]
	ldrb	r2, [fp, #-42]	@ zero_extendqisi2
	ldrb	r3, [fp, #26]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-26]
	ldrb	r2, [fp, #-41]	@ zero_extendqisi2
	ldrb	r3, [fp, #27]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-25]
	ldrb	r2, [fp, #-40]	@ zero_extendqisi2
	ldrb	r3, [fp, #28]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-24]
	ldrb	r2, [fp, #-39]	@ zero_extendqisi2
	ldrb	r3, [fp, #29]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-23]
	ldrb	r2, [fp, #-38]	@ zero_extendqisi2
	ldrb	r3, [fp, #30]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-22]
	ldrb	r2, [fp, #-37]	@ zero_extendqisi2
	ldrb	r3, [fp, #31]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-21]
	ldrb	r2, [fp, #-36]	@ zero_extendqisi2
	ldrb	r3, [fp, #32]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-20]
	ldrb	r2, [fp, #-35]	@ zero_extendqisi2
	ldrb	r3, [fp, #33]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-19]
	ldrb	r2, [fp, #-34]	@ zero_extendqisi2
	ldrb	r3, [fp, #34]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-18]
	ldrb	r2, [fp, #-33]	@ zero_extendqisi2
	ldrb	r3, [fp, #35]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-17]
	ldrb	r2, [fp, #-32]	@ zero_extendqisi2
	ldrb	r3, [fp, #36]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-16]
	ldrb	r2, [fp, #-31]	@ zero_extendqisi2
	ldrb	r3, [fp, #37]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-15]
	ldrb	r2, [fp, #-30]	@ zero_extendqisi2
	ldrb	r3, [fp, #38]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-14]
	ldrb	r2, [fp, #-29]	@ zero_extendqisi2
	ldrb	r3, [fp, #39]	@ zero_extendqisi2
	eor	r3, r3, r2
	and	r3, r3, #255
	strb	r3, [fp, #-13]
	ldr	r3, [fp, #-112]
	mov	r0, r3
	sub	r3, fp, #28
	mov	r2, #16
	mov	r1, r3
	bl	memcpy
	ldr	r0, [fp, #-112]
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, lr}
	add	sp, sp, #16
	bx	lr
.L20:
	.align	2
.L19:
	.word	rsbox
	.word	sbox
	.word	Rcon
	.size	AES128_decrypt, .-AES128_decrypt
	.section	.rodata
	.align	2
.LC5:
	.ascii	"ECB encrypt verbose:\012\000"
	.align	2
.LC6:
	.ascii	"plain text:\000"
	.align	2
.LC7:
	.ascii	"\000"
	.align	2
.LC8:
	.ascii	"key:\012\000"
	.align	2
.LC9:
	.ascii	"ciphertext:\000"
	.align	2
.LC0:
	.byte	43
	.byte	126
	.byte	21
	.byte	22
	.byte	40
	.byte	-82
	.byte	-46
	.byte	-90
	.byte	-85
	.byte	-9
	.byte	21
	.byte	-120
	.byte	9
	.byte	-49
	.byte	79
	.byte	60
	.align	2
.LC1:
	.byte	107
	.byte	-63
	.byte	-66
	.byte	-30
	.byte	46
	.byte	64
	.byte	-97
	.byte	-106
	.byte	-23
	.byte	61
	.byte	126
	.byte	17
	.byte	115
	.byte	-109
	.byte	23
	.byte	42
	.byte	-82
	.byte	45
	.byte	-118
	.byte	87
	.byte	30
	.byte	3
	.byte	-84
	.byte	-100
	.byte	-98
	.byte	-73
	.byte	111
	.byte	-84
	.byte	69
	.byte	-81
	.byte	-114
	.byte	81
	.byte	48
	.byte	-56
	.byte	28
	.byte	70
	.byte	-93
	.byte	92
	.byte	-28
	.byte	17
	.byte	-27
	.byte	-5
	.byte	-63
	.byte	25
	.byte	26
	.byte	10
	.byte	82
	.byte	-17
	.byte	-10
	.byte	-97
	.byte	36
	.byte	69
	.byte	-33
	.byte	79
	.byte	-101
	.byte	23
	.byte	-83
	.byte	43
	.byte	65
	.byte	123
	.byte	-26
	.byte	108
	.byte	55
	.byte	16
	.align	2
.LC10:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_encrypt_ecb_verbose, %function
test_encrypt_ecb_verbose:
	@ args = 0, pretend = 0, frame = 104
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #132
	ldr	r3, .L27
	ldr	r3, [r3]
	str	r3, [fp, #-16]
	mov	r3,#0
	ldr	r3, .L27+4
	sub	ip, fp, #112
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r3, .L27+8
	sub	ip, fp, #80
	mov	lr, r3
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldmia	lr!, {r0, r1, r2, r3}
	stmia	ip!, {r0, r1, r2, r3}
	ldm	lr, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r0, .L27+12
	bl	puts
	ldr	r0, .L27+16
	bl	puts
	mov	r3, #0
	strb	r3, [fp, #-113]
	b	.L22
.L23:
	ldrb	r3, [fp, #-113]	@ zero_extendqisi2
	lsl	r3, r3, #4
	sub	r2, fp, #12
	add	r3, r2, r3
	ldr	r2, [r3, #-56]
	str	r2, [sp]
	sub	r3, r3, #68
	ldm	r3, {r1, r2, r3}
	ldr	r0, .L27+20
	bl	printstate
	ldrb	r3, [fp, #-113]
	add	r3, r3, #1
	strb	r3, [fp, #-113]
.L22:
	ldrb	r3, [fp, #-113]	@ zero_extendqisi2
	cmp	r3, #3
	bls	.L23
	mov	r0, #10
	bl	putchar
	ldr	r3, [fp, #-100]
	str	r3, [sp]
	sub	r3, fp, #112
	ldm	r3, {r1, r2, r3}
	ldr	r0, .L27+24
	bl	printstate
	mov	r0, #10
	bl	putchar
	ldr	r0, .L27+28
	bl	puts
	mov	r3, #0
	strb	r3, [fp, #-113]
	b	.L24
.L25:
	ldrb	r3, [fp, #-113]	@ zero_extendqisi2
	sub	r4, fp, #96
	lsl	ip, r3, #4
	sub	r3, fp, #12
	add	ip, r3, ip
	add	lr, sp, #4
	sub	r3, fp, #112
	ldm	r3, {r0, r1, r2, r3}
	stm	lr, {r0, r1, r2, r3}
	ldr	r3, [ip, #-56]
	str	r3, [sp]
	sub	r3, ip, #68
	ldm	r3, {r1, r2, r3}
	mov	r0, r4
	bl	AES128_encrypt
	ldr	r3, [fp, #-84]
	str	r3, [sp]
	sub	r3, fp, #96
	ldm	r3, {r1, r2, r3}
	ldr	r0, .L27+20
	bl	printstate
	ldrb	r3, [fp, #-113]
	add	r3, r3, #1
	strb	r3, [fp, #-113]
.L24:
	ldrb	r3, [fp, #-113]	@ zero_extendqisi2
	cmp	r3, #3
	bls	.L25
	mov	r0, #10
	bl	putchar
	nop
	ldr	r3, .L27
	ldr	r2, [r3]
	ldr	r3, [fp, #-16]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L26
	bl	__stack_chk_fail
.L26:
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L28:
	.align	2
.L27:
	.word	.LC10
	.word	.LC0
	.word	.LC1
	.word	.LC5
	.word	.LC6
	.word	.LC7
	.word	.LC8
	.word	.LC9
	.size	test_encrypt_ecb_verbose, .-test_encrypt_ecb_verbose
	.section	.rodata
	.align	2
.LC11:
	.ascii	"ECB encrypt: \000"
	.align	2
.LC12:
	.ascii	"SUCCESS!\000"
	.align	2
.LC13:
	.ascii	"FAILURE!\000"
	.align	2
.LC14:
	.ascii	"Expected:\012\000"
	.align	2
.LC15:
	.ascii	"Result:\012\000"
	.align	2
.LC2:
	.byte	107
	.byte	-63
	.byte	-66
	.byte	-30
	.byte	46
	.byte	64
	.byte	-97
	.byte	-106
	.byte	-23
	.byte	61
	.byte	126
	.byte	17
	.byte	115
	.byte	-109
	.byte	23
	.byte	42
	.align	2
.LC3:
	.byte	58
	.byte	-41
	.byte	123
	.byte	-76
	.byte	13
	.byte	122
	.byte	54
	.byte	96
	.byte	-88
	.byte	-98
	.byte	-54
	.byte	-13
	.byte	36
	.byte	102
	.byte	-17
	.byte	-105
	.align	2
.LC16:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	test_encrypt_ecb
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_encrypt_ecb, %function
test_encrypt_ecb:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #96
	ldr	r3, .L34
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L34+4
	sub	ip, fp, #72
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r3, .L34+8
	sub	ip, fp, #56
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r3, .L34+12
	sub	ip, fp, #40
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	sub	lr, fp, #24
	add	ip, sp, #4
	sub	r3, fp, #72
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r3, [fp, #-44]
	str	r3, [sp]
	sub	r3, fp, #56
	ldm	r3, {r1, r2, r3}
	mov	r0, lr
	bl	AES128_encrypt
	ldr	r0, .L34+16
	bl	printf
	sub	r1, fp, #24
	sub	r3, fp, #40
	mov	r2, #16
	mov	r0, r3
	bl	memcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L30
	ldr	r0, .L34+20
	bl	puts
	b	.L33
.L30:
	ldr	r0, .L34+24
	bl	puts
	ldr	r3, [fp, #-28]
	str	r3, [sp]
	sub	r3, fp, #40
	ldm	r3, {r1, r2, r3}
	ldr	r0, .L34+28
	bl	printstate
	ldr	r3, [fp, #-12]
	str	r3, [sp]
	sub	r3, fp, #24
	ldm	r3, {r1, r2, r3}
	ldr	r0, .L34+32
	bl	printstate
.L33:
	nop
	ldr	r3, .L34
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L32
	bl	__stack_chk_fail
.L32:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L35:
	.align	2
.L34:
	.word	.LC16
	.word	.LC0
	.word	.LC2
	.word	.LC3
	.word	.LC11
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.size	test_encrypt_ecb, .-test_encrypt_ecb
	.section	.rodata
	.align	2
.LC17:
	.ascii	"ECB decrypt: \000"
	.align	2
.LC18:
	.word	__stack_chk_guard
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	test_decrypt_ecb, %function
test_decrypt_ecb:
	@ args = 0, pretend = 0, frame = 72
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #96
	ldr	r3, .L41
	ldr	r3, [r3]
	str	r3, [fp, #-8]
	mov	r3,#0
	ldr	r3, .L41+4
	sub	ip, fp, #72
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r3, .L41+8
	sub	ip, fp, #56
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r3, .L41+12
	sub	ip, fp, #40
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	sub	lr, fp, #24
	add	ip, sp, #4
	sub	r3, fp, #72
	ldm	r3, {r0, r1, r2, r3}
	stm	ip, {r0, r1, r2, r3}
	ldr	r3, [fp, #-44]
	str	r3, [sp]
	sub	r3, fp, #56
	ldm	r3, {r1, r2, r3}
	mov	r0, lr
	bl	AES128_decrypt
	ldr	r0, .L41+16
	bl	printf
	sub	r1, fp, #24
	sub	r3, fp, #40
	mov	r2, #16
	mov	r0, r3
	bl	memcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L37
	ldr	r0, .L41+20
	bl	puts
	b	.L40
.L37:
	ldr	r0, .L41+24
	bl	puts
	ldr	r3, [fp, #-28]
	str	r3, [sp]
	sub	r3, fp, #40
	ldm	r3, {r1, r2, r3}
	ldr	r0, .L41+28
	bl	printstate
	ldr	r3, [fp, #-12]
	str	r3, [sp]
	sub	r3, fp, #24
	ldm	r3, {r1, r2, r3}
	ldr	r0, .L41+32
	bl	printstate
.L40:
	nop
	ldr	r3, .L41
	ldr	r2, [r3]
	ldr	r3, [fp, #-8]
	eors	r2, r3, r2
	mov	r3, #0
	beq	.L39
	bl	__stack_chk_fail
.L39:
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L42:
	.align	2
.L41:
	.word	.LC18
	.word	.LC0
	.word	.LC3
	.word	.LC2
	.word	.LC17
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	.LC15
	.size	test_decrypt_ecb, .-test_decrypt_ecb
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	bl	test_encrypt_ecb
	bl	test_decrypt_ecb
	bl	test_encrypt_ecb_verbose
	mov	r3, #0
	mov	r0, r3
	pop	{fp, pc}
	.size	main, .-main
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
