Function at 0x492dc0
Capabilities:
Encode data using xor
Encrypt data using chaskey
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
mov ebx, eax
and esp, 0xfffffff0
sub esp, 0x130
mov dword [esp + 0xc], eax
lea eax, [edx + 0x20]
cmp ebx, eax
jae 0x492de7
lea eax, [ebx + 0x20]
cmp edx, eax
jb 0x494750
movdqu xmm6, xmmword [edx]
mov edi, dword [esp + 0xc]
movdqu xmm5, xmmword [edx + 0x10]
movdqa xmm0, xmm6
shufps xmm0, xmm5, 0x88
shufps xmm6, xmm5, 0xdd
movdqa xmm5, xmmword [str._________________f_f_f_f_f_f_f_f_f_f_f_f_f_f_f_f]
movdqa xmm1, xmm0
movdqa xmm4, xmmword [0x7422f0]
psrld xmm1, 1
pxor xmm1, xmm0
movdqa xmm3, xmmword [0x742300]
pand xmm1, xmm5
pxor xmm0, xmm1
pslld xmm1, 1
pxor xmm1, xmm0
movdqa xmm2, xmm1
psrld xmm2, 2
pxor xmm2, xmm1
pand xmm2, xmm4
pxor xmm1, xmm2
pslld xmm2, 2
pxor xmm2, xmm1
movdqa xmm0, xmm2
psrld xmm0, 4
pxor xmm0, xmm2
pand xmm0, xmm3
pxor xmm2, xmm0
pslld xmm0, 4
pxor xmm0, xmm2
movdqa xmm2, xmmword [0x742310]
movdqa xmm7, xmm0
movdqa xmm1, xmm0
psrld xmm7, 8
pxor xmm7, xmm0
pand xmm7, xmm2
pxor xmm1, xmm7
pslld xmm7, 8
pxor xmm1, xmm7
movdqa xmm7, xmm6
psrld xmm7, 1
pxor xmm7, xmm6
pand xmm7, xmm5
pxor xmm6, xmm7
pslld xmm7, 1
pxor xmm6, xmm7
movdqa xmm7, xmm6
psrld xmm7, 2
pxor xmm7, xmm6
pand xmm7, xmm4
pxor xmm6, xmm7
pslld xmm7, 2
pxor xmm6, xmm7
movdqa xmm7, xmm6
psrld xmm7, 4
pxor xmm7, xmm6
pand xmm7, xmm3
pxor xmm6, xmm7
pslld xmm7, 4
pxor xmm6, xmm7
movdqa xmm7, xmm6
psrld xmm7, 8
pxor xmm7, xmm6
pand xmm7, xmm2
pxor xmm6, xmm7
pslld xmm7, 8
movdqa xmm0, xmm6
movdqu xmm6, xmmword [edi + 0x10]
pxor xmm0, xmm7
movaps xmmword [esp + 0x110], xmm6
movdqa xmm6, xmmword [0x742320]
pand xmm6, xmm1
psrld xmm1, 0x10
movdqu xmm7, xmmword [edi]
movaps xmmword [esp + 0x120], xmm7
movdqa xmm7, xmm6
movdqa xmm6, xmm0
pand xmm0, xmmword [0x742330]
pslld xmm6, 0x10
por xmm6, xmm7
movdqa xmm7, xmmword [esp + 0x120]
por xmm0, xmm1
shufps xmm7, xmmword [esp + 0x110], 0x88
movdqa xmm1, xmmword [esp + 0x120]
shufps xmm1, xmmword [esp + 0x110], 0xdd
pxor xmm6, xmm7
pxor xmm1, xmm0
movdqa xmm0, xmm6
punpckhdq xmm6, xmm1
punpckldq xmm0, xmm1
movups xmmword [edi + 0x10], xmm6
movups xmmword [edi], xmm0
movdqu xmm7, xmmword [edx + 0x20]
movdqu xmm1, xmmword [edx + 0x30]
movdqa xmm6, xmm7
shufps xmm7, xmm1, 0xdd
shufps xmm6, xmm1, 0x88
movdqa xmm1, xmm6
psrld xmm1, 1
pxor xmm1, xmm6
pand xmm1, xmm5
pxor xmm6, xmm1
pslld xmm1, 1
movdqa xmm0, xmm1
pxor xmm0, xmm6
movdqa xmm6, xmm0
psrld xmm6, 2
pxor xmm6, xmm0
pand xmm6, xmm4
pxor xmm0, xmm6
pslld xmm6, 2
pxor xmm6, xmm0
movdqa xmm1, xmm6
psrld xmm1, 4
pxor xmm1, xmm6
pand xmm1, xmm3
pxor xmm6, xmm1
pslld xmm1, 4
pxor xmm1, xmm6
movdqa xmm0, xmm1
psrld xmm0, 8
pxor xmm0, xmm1
pand xmm0, xmm2
pxor xmm1, xmm0
pslld xmm0, 8
pxor xmm1, xmm0
movdqa xmm0, xmm7
psrld xmm0, 1
pxor xmm0, xmm7
pand xmm0, xmm5
pxor xmm7, xmm0
pslld xmm0, 1
pxor xmm0, xmm7
movdqu xmm7, xmmword [edi + 0x20]
movdqa xmm6, xmm0
movaps xmmword [esp + 0x120], xmm7
psrld xmm6, 2
pxor xmm6, xmm0
pand xmm6, xmm4
pxor xmm0, xmm6
pslld xmm6, 2
pxor xmm6, xmm0
movdqa xmm0, xmm6
psrld xmm0, 4
pxor xmm0, xmm6
pand xmm0, xmm3
pxor xmm6, xmm0
pslld xmm0, 4
pxor xmm0, xmm6
movdqa xmm6, xmm0
psrld xmm6, 8
pxor xmm6, xmm0
pand xmm6, xmm2
pxor xmm0, xmm6
pslld xmm6, 8
pxor xmm0, xmm6
movdqu xmm6, xmmword [edi + 0x30]
movaps xmmword [esp + 0x110], xmm6
movdqa xmm7, xmm0
pslld xmm7, 0x10
movdqa xmm6, xmmword [0x742320]
pand xmm0, xmmword [0x742330]
pand xmm6, xmm1
psrld xmm1, 0x10
por xmm7, xmm6
movdqa xmm6, xmmword [esp + 0x120]
por xmm1, xmm0
shufps xmm6, xmmword [esp + 0x110], 0x88
movdqa xmm0, xmmword [esp + 0x120]
shufps xmm0, xmmword [esp + 0x110], 0xdd
pxor xmm6, xmm7
pxor xmm0, xmm1
movdqa xmm1, xmm6
punpckhdq xmm6, xmm0
punpckldq xmm1, xmm0
movups xmmword [edi + 0x20], xmm1
movups xmmword [edi + 0x30], xmm6
movdqu xmm7, xmmword [edx + 0x40]
movdqu xmm1, xmmword [edx + 0x50]
movdqa xmm0, xmm7
shufps xmm7, xmm1, 0xdd
shufps xmm0, xmm1, 0x88
movdqa xmm6, xmm0
psrld xmm6, 1
pxor xmm6, xmm0
pand xmm6, xmm5
movdqa xmm1, xmm6
pxor xmm6, xmm0
pslld xmm1, 1
pxor xmm1, xmm6
movdqa xmm6, xmm1
psrld xmm6, 2
pxor xmm6, xmm1
pand xmm6, xmm4
movdqa xmm0, xmm6
pxor xmm6, xmm1
pslld xmm0, 2
pxor xmm0, xmm6
movdqa xmm6, xmm0
psrld xmm6, 4
pxor xmm6, xmm0
pand xmm6, xmm3
pxor xmm0, xmm6
movdqa xmm1, xmm6
pslld xmm1, 4
pxor xmm1, xmm0
movdqa xmm0, xmm1
psrld xmm0, 8
pxor xmm0, xmm1
pand xmm0, xmm2
movdqa xmm6, xmm0
pxor xmm0, xmm1
pslld xmm6, 8
pxor xmm6, xmm0
movdqa xmm0, xmm7
psrld xmm0, 1
pxor xmm0, xmm7
pand xmm5, xmm0
movdqa xmm0, xmm5
pxor xmm5, xmm7
pslld xmm0, 1
pxor xmm0, xmm5
movdqa xmm5, xmm0
psrld xmm5, 2
pxor xmm5, xmm0
pand xmm4, xmm5
movdqu xmm5, xmmword [edi + 0x50]
movdqa xmm1, xmm4
pxor xmm4, xmm0
pslld xmm1, 2
movaps xmmword [esp + 0x120], xmm5
pxor xmm4, xmm1
movdqa xmm1, xmm4
psrld xmm1, 4
pxor xmm1, xmm4
pand xmm3, xmm1
movdqa xmm0, xmm3
pxor xmm3, xmm4
movdqu xmm4, xmmword [edi + 0x40]
pslld xmm0, 4
pxor xmm3, xmm0
movdqa xmm1, xmm3
psrld xmm1, 8
pxor xmm1, xmm3
pand xmm2, xmm1
movdqa xmm0, xmm2
pxor xmm2, xmm3
movdqa xmm3, xmmword [0x742320]
pslld xmm0, 8
pand xmm3, xmm6
psrld xmm6, 0x10
pxor xmm2, xmm0
movdqa xmm0, xmm2
pand xmm2, xmmword [0x742330]
pslld xmm0, 0x10
por xmm3, xmm0
movdqa xmm0, xmm4
shufps xmm4, xmm5, 0xdd
shufps xmm0, xmm5, 0x88
por xmm6, xmm2
pxor xmm3, xmm0
pxor xmm6, xmm4
movdqa xmm0, xmm3
punpckhdq xmm3, xmm6
punpckldq xmm0, xmm6
movups xmmword [edi + 0x50], xmm3
movups xmmword [edi + 0x40], xmm0
mov ebx, dword [edx + 0x60]
mov eax, ebx
shr eax, 1
xor eax, ebx
and eax, 0x22222222
xor ebx, eax
mov ecx, ebx
lea ebx, [eax + eax]
xor ebx, ecx
mov eax, ebx
shr eax, 2
xor eax, ebx
and eax, 0xc0c0c0c
xor ebx, eax
mov ecx, ebx
lea ebx, [eax*4]
mov eax, dword [edx + 0x64]
xor ebx, ecx
mov esi, ebx
mov edx, eax
shr esi, 4
shr edx, 1
xor esi, ebx
xor edx, eax
and esi, 0xf000f0
and edx, 0x22222222
xor ebx, esi
shl esi, 4
xor eax, edx
xor ebx, esi
mov ecx, ebx
shr ecx, 8
xor ecx, ebx
and ecx, 0xff00
xor ebx, ecx
shl ecx, 8
xor ecx, ebx
mov ebx, eax
lea eax, [edx + edx]
xor eax, ebx
mov edx, eax
shr edx, 2
xor edx, eax
and edx, 0xc0c0c0c
xor eax, edx
mov ebx, eax
lea eax, [edx*4]
xor eax, ebx
mov edx, eax
shr edx, 4
xor edx, eax
and edx, 0xf000f0
xor eax, edx
mov ebx, eax
mov eax, edx
shl eax, 4
xor eax, ebx
movzx ebx, cx
shr ecx, 0x10
mov edx, eax
shr edx, 8
xor edx, eax
and edx, 0xff00
xor eax, edx
shl edx, 8
xor eax, edx
mov edx, eax
xor ax, ax
shl edx, 0x10
or eax, ecx
xor dword [edi + 0x64], eax
or edx, ebx
xor dword [edi + 0x60], edx
mov eax, dword [esp + 0xc]
mov ebx, dword [eax]
mov dword [esp + 0xe4], ebx
mov ebx, dword [eax + 4]
mov dword [esp + 0x80], ebx
mov ebx, dword [eax + 8]
mov dword [esp + 0xe0], ebx
mov ebx, dword [eax + 0xc]
mov dword [esp + 0x7c], ebx
mov ebx, dword [eax + 0x10]
mov dword [esp + 0xdc], ebx
mov ebx, dword [eax + 0x14]
mov dword [esp + 0x78], ebx
mov ebx, dword [eax + 0x18]
mov dword [esp + 0xd8], ebx
mov ebx, dword [eax + 0x1c]
mov dword [esp + 0x74], ebx
mov ebx, dword [eax + 0x20]
mov dword [esp + 0xd4], ebx
mov ebx, dword [eax + 0x24]
mov dword [esp + 0x70], ebx
mov ebx, dword [eax + 0x28]
mov dword [esp + 0xd0], ebx
mov ebx, dword [eax + 0x2c]
mov dword [esp + 0x6c], ebx
mov ebx, dword [eax + 0x30]
mov dword [esp + 0xcc], ebx
mov ebx, dword [eax + 0x34]
mov dword [esp + 0x68], ebx
mov ebx, dword [eax + 0x38]
mov dword [esp + 0xc8], ebx
mov ebx, dword [eax + 0x3c]
mov dword [esp + 0x64], ebx
mov ebx, dword [eax + 0x40]
mov dword [esp + 0xc4], ebx
mov ebx, dword [eax + 0x44]
mov dword [esp + 0x60], ebx
mov ebx, dword [eax + 0x48]
mov dword [esp + 0xc0], ebx
mov ebx, dword [eax + 0x4c]
mov dword [esp + 0x5c], ebx
mov ebx, dword [eax + 0x50]
mov dword [esp + 0xbc], ebx
mov ebx, dword [eax + 0x54]
mov dword [esp + 0x58], ebx
mov ebx, dword [eax + 0x58]
mov dword [esp + 0xb8], ebx
mov ebx, dword [eax + 0x5c]
mov dword [esp + 0x54], ebx
mov ebx, dword [eax + 0x60]
mov dword [esp + 0xb4], ebx
mov ebx, dword [eax + 0x64]
mov dword [esp + 0x50], ebx
mov ebx, dword [eax + 0x68]
mov dword [esp + 0xb0], ebx
mov ebx, dword [eax + 0x6c]
mov dword [esp + 0x4c], ebx
mov ebx, dword [eax + 0x70]
mov dword [esp + 0xac], ebx
mov ebx, dword [eax + 0x74]
mov dword [esp + 0x48], ebx
mov ebx, dword [eax + 0x78]
mov dword [esp + 0xa8], ebx
mov ebx, dword [eax + 0x7c]
mov dword [esp + 0x44], ebx
mov ebx, dword [eax + 0x80]
mov dword [esp + 0xa4], ebx
mov ebx, dword [eax + 0x84]
mov dword [esp + 0x40], ebx
mov ebx, dword [eax + 0x88]
mov dword [esp + 0xa0], ebx
mov ebx, dword [eax + 0x8c]
mov dword [esp + 0x3c], ebx
mov ebx, dword [eax + 0x90]
mov dword [esp + 0x9c], ebx
mov ebx, dword [eax + 0x94]
mov dword [esp + 0x38], ebx
mov ebx, dword [eax + 0x98]
mov dword [esp + 0x98], ebx
mov ebx, dword [eax + 0x9c]
mov dword [esp + 0x34], ebx
mov ebx, dword [eax + 0xa0]
mov dword [esp + 0x94], ebx
mov ebx, dword [eax + 0xa4]
mov dword [esp + 0x30], ebx
mov ebx, dword [eax + 0xa8]
mov dword [esp + 0x90], ebx
mov ebx, dword [eax + 0xac]
mov dword [esp + 0x2c], ebx
mov ebx, dword [eax + 0xb0]
mov dword [esp + 0x8c], ebx
mov ebx, dword [eax + 0xb4]
mov dword [esp + 0x28], ebx
mov ebx, dword [eax + 0xb8]
mov dword [esp + 0x88], ebx
mov ebx, dword [eax + 0xbc]
mov dword [esp + 0x24], ebx
mov ebx, dword [eax + 0xc0]
mov eax, dword [eax + 0xc4]
mov dword [esp + 0x120], 0x872d40
mov dword [esp + 0x84], ebx
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x70]
xor eax, dword [esp + 0x5c]
xor eax, dword [esp + 0x48]
mov esi, dword [esp + 0xe0]
xor esi, dword [esp + 0xcc]
xor eax, dword [esp + 0x34]
xor esi, dword [esp + 0xb8]
xor eax, dword [esp + 0x20]
xor esi, dword [esp + 0xa4]
mov ebx, dword [esp + 0x7c]
xor esi, dword [esp + 0x90]
xor ebx, dword [esp + 0x68]
xor ebx, dword [esp + 0x54]
mov edi, dword [esp + 0xd4]
xor ebx, dword [esp + 0x40]
xor edi, dword [esp + 0xc0]
mov edx, eax
xor ebx, dword [esp + 0x2c]
xor edi, dword [esp + 0xac]
rol eax, 1
xor edx, esi
xor edi, dword [esp + 0x98]
xor edi, dword [esp + 0x84]
mov dword [esp + 0x10c], edx
mov edx, dword [esp + 0xdc]
xor edx, dword [esp + 0xc8]
xor edx, dword [esp + 0xb4]
mov ecx, ebx
xor edx, dword [esp + 0xa0]
rol ecx, 1
xor edx, dword [esp + 0x8c]
xor ecx, edi
mov dword [esp + 0x110], ecx
mov ecx, dword [esp + 0x78]
xor ecx, dword [esp + 0x64]
xor ecx, dword [esp + 0x50]
xor eax, edx
xor ecx, dword [esp + 0x3c]
mov dword [esp + 0x108], eax
xor ecx, dword [esp + 0x28]
mov eax, dword [esp + 0xe4]
xor eax, dword [esp + 0xd0]
xor eax, dword [esp + 0xbc]
xor edi, ecx
xor eax, dword [esp + 0xa8]
rol ecx, 1
xor eax, dword [esp + 0x94]
mov dword [esp + 0x104], edi
mov edi, dword [esp + 0x80]
xor edi, dword [esp + 0x6c]
xor edi, dword [esp + 0x58]
xor edi, dword [esp + 0x44]
xor ecx, eax
xor edi, dword [esp + 0x30]
mov dword [esp + 0x100], ecx
mov ecx, dword [esp + 0x74]
xor ecx, dword [esp + 0x60]
xor ecx, dword [esp + 0x4c]
xor ecx, dword [esp + 0x38]
xor edx, edi
rol edi, 1
xor ecx, dword [esp + 0x24]
mov dword [esp + 0xfc], edx
mov edx, ecx
rol edx, 1
xor edx, esi
mov esi, dword [esp + 0xd8]
xor esi, dword [esp + 0xc4]
xor esi, dword [esp + 0xb0]
mov dword [esp + 0xf8], edx
xor esi, dword [esp + 0x9c]
xor esi, dword [esp + 0x88]
xor edi, esi
xor ebx, esi
mov dword [esp + 0xf4], edi
mov edi, dword [esp + 0xcc]
mov edx, ebx
xor edi, dword [esp + 0x100]
mov ebx, eax
mov eax, dword [esp + 0xe4]
xor ebx, ecx
xor eax, dword [esp + 0x110]
mov dword [esp + 0xf0], ebx
ror edi, 0xa
mov dword [esp + 0xe8], edi
mov edi, dword [esp + 0x50]
mov dword [esp + 0xec], edx
xor edi, edx
mov ebx, edi
mov edi, dword [esp + 0x38]
xor edi, dword [esp + 0x104]
ror ebx, 0xa
mov ecx, edi
mov edi, dword [esp + 0x84]
xor edi, dword [esp + 0xf4]
rol ecx, 0xb
mov edx, edi
mov edi, dword [esp + 0xe8]
rol edx, 7
not edi
mov esi, edi
mov edi, dword [esp + 0x120]
and esi, ebx
mov dword [esp + 0xe4], esi
mov esi, dword [edi]
mov edi, dword [esp + 0xe4]
xor esi, eax
xor edi, esi
mov dword [esp + 0xe4], edi
mov edi, ebx
not edi
mov esi, edi
mov edi, ecx
and esi, ecx
xor esi, dword [esp + 0xe8]
not edi
mov dword [esp + 0x50], esi
mov esi, edi
and esi, edx
mov edi, esi
xor edi, ebx
mov ebx, edx
not ebx
mov dword [esp + 0x84], edi
mov edi, dword [esp + 0x58]
and ebx, eax
not eax
and eax, dword [esp + 0xe8]
xor edi, dword [esp + 0x10c]
xor ebx, ecx
mov ecx, dword [esp + 0xd8]
xor ecx, dword [esp + 0x108]
mov dword [esp + 0xcc], ebx
mov ebx, dword [esp + 0x40]
xor ebx, dword [esp + 0xfc]
xor eax, edx
mov edx, dword [esp + 0x28]
xor edx, dword [esp + 0xec]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xc0]
rol edi, 2
xor eax, dword [esp + 0xf4]
rol ecx, 0xe
ror ebx, 9
mov esi, eax
mov eax, edx
rol esi, 0xa
ror eax, 1
mov edx, esi
not edx
and edx, edi
xor edx, ecx
mov dword [esp + 0x58], edx
mov edx, edi
not edx
and edx, ebx
xor edx, esi
mov dword [esp + 0xd8], edx
mov edx, ebx
not edx
and edx, eax
xor edx, edi
mov edi, eax
not edi
mov dword [esp + 0x40], edx
mov edx, edi
and edx, ecx
not ecx
and ecx, esi
mov edi, edx
mov esi, ecx
xor edi, ebx
xor esi, eax
mov dword [esp + 0x28], edi
mov dword [esp + 0xc0], esi
mov esi, dword [esp + 0x7c]
xor esi, dword [esp + 0xfc]
mov ebx, dword [esp + 0xc8]
mov eax, dword [esp + 0x98]
rol esi, 1
xor ebx, dword [esp + 0xf8]
xor eax, dword [esp + 0xf4]
mov edi, ebx
mov ebx, dword [esp + 0x4c]
xor ebx, dword [esp + 0x104]
rol edi, 3
mov ecx, eax
mov eax, dword [esp + 0x94]
mov edx, edi
rol ecx, 4
xor eax, dword [esp + 0x110]
not edx
rol ebx, 0xd
and edx, ebx
xor edx, esi
rol eax, 9
mov dword [esp + 0x4c], edx
mov edx, ebx
not edx
and edx, ecx
xor edx, edi
mov dword [esp + 0x98], edx
mov edx, ecx
not edx
and edx, eax
xor edx, ebx
mov ebx, eax
not ebx
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x70]
and ebx, esi
not esi
xor edx, dword [esp + 0xf0]
xor ebx, ecx
and esi, edi
xor esi, eax
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0xb8]
mov ebx, dword [esp + 0xd0]
xor eax, dword [esp + 0x100]
xor ebx, dword [esp + 0x110]
mov dword [esp + 0x18], esi
rol edx, 0xe
mov esi, eax
mov eax, dword [esp + 0x3c]
xor eax, dword [esp + 0xec]
ror ebx, 0xe
rol esi, 5
mov edi, ebx
not edi
and edi, esi
mov ecx, eax
mov eax, dword [esp + 0x88]
xor edi, edx
xor eax, dword [esp + 0x108]
rol ecx, 8
mov dword [esp + 0x14], edi
mov edi, esi
not edi
and edi, ecx
ror eax, 4
xor edi, ebx
mov dword [esp + 0x3c], edi
mov edi, ecx
not edi
and edi, eax
xor edi, esi
mov esi, eax
not esi
mov dword [esp + 0x10], edi
and esi, edx
not edx
and edx, ebx
xor esi, ecx
mov ebx, edx
mov dword [esp + 0x70], esi
xor ebx, eax
mov dword [esp + 0xb8], ebx
mov ebx, dword [esp + 0xdc]
xor ebx, dword [esp + 0xf8]
mov eax, dword [esp + 0x60]
xor eax, dword [esp + 0x104]
mov esi, dword [esp + 0x90]
mov ecx, dword [esp + 0x48]
xor esi, dword [esp + 0x100]
xor ecx, dword [esp + 0xf0]
mov edx, dword [esp + 0x44]
xor edx, dword [esp + 0x10c]
ror ebx, 1
ror eax, 4
mov edi, ecx
mov ecx, edx
mov edx, esi
mov esi, eax
ror edi, 0xc
not esi
ror ecx, 0xb
and esi, edi
rol edx, 1
xor esi, ebx
mov dword [esp + 0x94], esi
mov esi, edi
not esi
and esi, ecx
xor esi, eax
mov dword [esp + 0x90], esi
mov esi, ecx
not esi
and esi, edx
xor esi, edi
mov dword [esp + 0x60], esi
mov esi, edx
not esi
and esi, ebx
not ebx
and ebx, eax
xor esi, ecx
mov eax, ebx
mov ebx, dword [esp + 0x80]
xor ebx, dword [esp + 0x10c]
xor eax, edx
mov dword [esp + 0x88], esi
mov dword [esp + 0xdc], eax
mov eax, dword [esp + 0x68]
xor eax, dword [esp + 0xfc]
mov dword [esp + 0xd0], ebx
mov edi, eax
mov eax, dword [esp + 0xb4]
xor eax, dword [esp + 0xf8]
ror edi, 0xa
mov ebx, eax
mov eax, dword [esp + 0x9c]
ror ebx, 0xb
xor eax, dword [esp + 0x108]
mov dword [esp + 0xe8], ebx
mov ecx, eax
mov eax, dword [esp + 0x20]
xor eax, dword [esp + 0xf0]
rol ecx, 0xa
mov edx, eax
mov eax, edi
not eax
rol edx, 7
mov esi, eax
mov eax, dword [esp + 0x120]
and esi, ebx
mov ebx, dword [esp + 0xd0]
xor ebx, dword [eax + 4]
mov eax, esi
xor eax, ebx
mov ebx, dword [esp + 0xe8]
mov dword [esp + 0x80], eax
mov eax, ecx
not eax
not ebx
mov esi, ebx
mov ebx, edx
and esi, ecx
not ebx
xor esi, edi
mov dword [esp + 0xb4], esi
mov esi, eax
mov eax, dword [esp + 0xe8]
and esi, edx
xor eax, esi
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xd0]
mov esi, dword [esp + 0xa4]
xor esi, dword [esp + 0x100]
and ebx, eax
not eax
xor ebx, ecx
and eax, edi
mov ecx, dword [esp + 0x74]
xor eax, edx
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x5c]
xor ebx, dword [esp + 0xf0]
mov dword [esp + 0x9c], eax
ror esi, 0xa
mov eax, dword [esp + 0xbc]
xor eax, dword [esp + 0x110]
xor ecx, dword [esp + 0x104]
rol ebx, 0xa
mov edi, eax
mov edx, ebx
mov eax, dword [esp + 0x8c]
rol edi, 1
not edx
rol ecx, 0xe
and edx, edi
xor eax, dword [esp + 0xf8]
xor edx, ecx
mov dword [esp + 0x44], edx
mov edx, edi
not edx
and edx, esi
ror eax, 2
xor edx, ebx
mov dword [esp + 0x74], edx
mov edx, esi
not edx
and edx, eax
xor edx, edi
mov edi, eax
not edi
mov dword [esp + 0x48], edx
mov edx, dword [esp + 0x30]
and edi, ecx
not ecx
xor edi, esi
and ecx, ebx
xor edx, dword [esp + 0x10c]
xor ecx, eax
mov dword [esp + 0x8c], edi
mov edi, dword [esp + 0x100]
mov dword [esp + 0x5c], ecx
xor edi, dword [esp + 0xe0]
mov ecx, dword [esp + 0x64]
xor ecx, dword [esp + 0xec]
mov esi, edx
rol esi, 9
mov eax, edi
mov edi, ecx
mov ecx, dword [esp + 0xb0]
xor ecx, dword [esp + 0x108]
rol edi, 3
mov edx, edi
not edx
mov ebx, ecx
mov ecx, dword [esp + 0xf0]
xor ecx, dword [esp + 0x34]
rol ebx, 0xc
and edx, ebx
xor edx, eax
mov dword [esp + 0xd0], edx
mov edx, ebx
rol ecx, 4
not edx
and edx, ecx
xor edx, edi
mov dword [esp + 0x34], edx
mov edx, ecx
not edx
and edx, esi
xor edx, ebx
mov ebx, esi
not ebx
mov dword [esp + 0xe8], edx
mov edx, ebx
and edx, eax
not eax
and eax, edi
mov ebx, edx
xor ebx, ecx
mov ecx, eax
xor ecx, esi
mov dword [esp + 0xbc], ebx
mov dword [esp + 0x64], ecx
mov ebx, dword [esp + 0x54]
xor ebx, dword [esp + 0xfc]
mov eax, dword [esp + 0x10c]
xor eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0xd4]
mov esi, dword [esp + 0xf8]
xor ecx, dword [esp + 0xf4]
xor esi, dword [esp + 0xa0]
mov edi, ebx
mov ebx, dword [esp + 0x104]
xor ebx, dword [esp + 0x24]
ror eax, 0xe
rol edi, 5
mov edx, eax
rol ecx, 0xd
not edx
rol esi, 7
ror ebx, 4
and edx, edi
xor edx, ecx
mov dword [esp + 0x6c], edx
mov edx, edi
not edx
and edx, esi
xor edx, eax
mov dword [esp + 0xc8], edx
mov edx, esi
not edx
and edx, ebx
xor edx, edi
mov edi, ebx
not edi
mov dword [esp + 0xa4], edx
mov edx, edi
and edx, ecx
not ecx
mov edi, edx
and ecx, eax
mov eax, dword [esp + 0x108]
xor edi, esi
xor eax, dword [esp + 0xc4]
xor ecx, ebx
mov dword [esp + 0xe0], edi
mov edi, dword [esp + 0xf4]
xor edi, dword [esp + 0xac]
mov ebx, dword [esp + 0xec]
xor ebx, dword [esp + 0x78]
mov dword [esp + 0x54], ecx
ror eax, 5
mov ecx, dword [esp + 0x110]
xor ecx, dword [esp + 0xa8]
mov edx, dword [esp + 0xfc]
xor edx, dword [esp + 0x2c]
mov esi, edi
mov edi, eax
ror esi, 0xd
not edi
ror ebx, 1
and edi, esi
ror ecx, 0xc
xor edi, ebx
rol edx, 1
mov dword [esp + 0x30], edi
mov edi, esi
not edi
and edi, ecx
xor edi, eax
mov dword [esp + 0x2c], edi
mov edi, ecx
not edi
and edi, edx
xor edi, esi
mov esi, edx
not esi
mov dword [esp + 0xc4], edi
and esi, ebx
not ebx
and ebx, eax
xor esi, ecx
mov ecx, ebx
mov dword [esp + 0x24], esi
xor ecx, edx
mov edi, ecx
mov ecx, dword [esp + 0x38]
xor ecx, dword [esp + 0x18]
xor ecx, dword [esp + 0xb8]
xor ecx, dword [esp + 0xc0]
mov ebx, dword [esp + 0xb4]
xor ebx, dword [esp + 0x74]
mov esi, dword [esp + 0x5c]
xor ebx, dword [esp + 0xc8]
xor esi, dword [esp + 0x64]
xor ebx, dword [esp + 0x34]
xor ecx, dword [esp + 0xdc]
xor ebx, dword [esp + 0x2c]
mov dword [esp + 0x78], edi
mov eax, ebx
rol eax, 1
mov edx, eax
mov eax, dword [esp + 0x9c]
xor edx, ecx
mov dword [esp + 0x110], edx
mov edx, dword [esp + 0x84]
xor eax, esi
mov esi, dword [esp + 0x50]
xor esi, dword [esp + 0xd8]
xor esi, dword [esp + 0x98]
xor eax, edi
xor eax, dword [esp + 0x54]
xor esi, dword [esp + 0x90]
xor edx, dword [esp + 0x40]
xor esi, dword [esp + 0x3c]
mov edi, eax
rol eax, 1
xor edi, esi
mov dword [esp + 0x10c], edi
mov edi, dword [esp + 0x10]
xor edi, edx
xor edi, dword [esp + 0x60]
mov edx, dword [esp + 0x20]
xor edi, dword [esp + 0x7c]
xor edx, dword [esp + 0x48]
xor eax, edi
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0xe8]
xor eax, edx
xor eax, dword [esp + 0xa4]
xor eax, dword [esp + 0xc4]
xor ecx, eax
mov dword [esp + 0x104], ecx
mov ecx, dword [esp + 0xe4]
xor ecx, dword [esp + 0x58]
xor ecx, dword [esp + 0x94]
xor ecx, dword [esp + 0x4c]
xor ecx, dword [esp + 0x14]
rol eax, 1
mov edx, eax
mov eax, dword [esp + 0xd0]
xor edx, ecx
mov dword [esp + 0x100], edx
mov edx, dword [esp + 0x80]
xor edx, dword [esp + 0x44]
xor eax, edx
xor eax, dword [esp + 0x6c]
mov edx, dword [esp + 0xe0]
xor eax, dword [esp + 0x30]
xor edi, eax
rol eax, 1
mov dword [esp + 0xfc], edi
mov edi, dword [esp + 0x68]
xor edi, dword [esp + 0xbc]
xor edx, edi
xor edx, dword [esp + 0x24]
xor edx, dword [esp + 0x8c]
mov edi, edx
rol edi, 1
xor edi, esi
mov esi, ecx
mov ecx, dword [esp + 0xd8]
mov dword [esp + 0xf8], edi
mov edi, dword [esp + 0xcc]
xor esi, edx
xor edi, dword [esp + 0x1c]
xor ecx, dword [esp + 0x100]
xor edi, dword [esp + 0x28]
mov dword [esp + 0xf0], esi
xor edi, dword [esp + 0x70]
mov esi, dword [esp + 0xe4]
xor edi, dword [esp + 0x88]
xor esi, dword [esp + 0x110]
mov edx, dword [esp + 0xe0]
ror ecx, 0xa
xor ebx, edi
xor eax, edi
mov edi, ecx
mov dword [esp + 0xf4], ebx
mov ebx, dword [esp + 0xe8]
xor ebx, dword [esp + 0xf4]
ror ebx, 0xa
mov dword [esp + 0xe8], ebx
xor edx, dword [esp + 0x104]
mov dword [esp + 0xec], eax
mov ecx, edx
mov edx, dword [esp + 0xdc]
rol ecx, 0xb
mov dword [esp + 0xe0], ecx
xor edx, eax
mov eax, edi
not eax
rol edx, 7
mov ecx, eax
mov eax, dword [esp + 0x120]
and ecx, ebx
mov ebx, ecx
mov ecx, dword [eax + 8]
xor ecx, esi
xor ebx, ecx
mov ecx, dword [esp + 0xe8]
mov dword [esp + 0xe4], ebx
mov ebx, dword [esp + 0xe0]
not ecx
mov eax, ecx
and eax, ebx
mov ecx, eax
xor ecx, edi
mov dword [esp + 0xe0], ecx
mov ecx, ebx
not ecx
mov eax, ecx
mov ecx, dword [esp + 0xe8]
and eax, edx
xor ecx, eax
mov dword [esp + 0xdc], ecx
mov ecx, edx
not ecx
mov eax, ecx
and eax, esi
not esi
and esi, edi
mov edi, dword [esp + 0xc0]
xor edi, dword [esp + 0xec]
mov ecx, eax
xor ecx, ebx
mov ebx, dword [esp + 0xd0]
xor ebx, dword [esp + 0x10c]
mov dword [esp + 0xd8], ecx
mov ecx, esi
mov esi, dword [esp + 0xc8]
mov eax, edi
xor esi, dword [esp + 0xfc]
mov edi, dword [esp + 0xc4]
xor edi, dword [esp + 0xf4]
xor ecx, edx
rol eax, 0xa
mov dword [esp + 0xd4], ecx
mov ecx, dword [esp + 0xcc]
rol ebx, 2
xor ecx, dword [esp + 0x108]
mov edx, esi
mov esi, edi
mov edi, eax
ror edx, 9
not edi
ror esi, 1
rol ecx, 0xe
and edi, ebx
xor edi, ecx
mov dword [esp + 0xd0], edi
mov edi, ebx
not edi
and edi, edx
xor edi, eax
mov dword [esp + 0xcc], edi
mov edi, edx
not edi
and edi, esi
xor edi, ebx
mov ebx, esi
not ebx
mov dword [esp + 0xc8], edi
mov edi, dword [esp + 0x40]
and ebx, ecx
not ecx
xor ebx, edx
and ecx, eax
xor ecx, esi
mov dword [esp + 0xc4], ebx
mov ebx, dword [esp + 0xb4]
xor ebx, dword [esp + 0xfc]
mov dword [esp + 0xc0], ecx
xor edi, dword [esp + 0xf8]
mov eax, dword [esp + 0xbc]
mov esi, dword [esp + 0x94]
mov ecx, ebx
rol ecx, 1
rol edi, 3
xor eax, dword [esp + 0x104]
mov ebx, edi
xor esi, dword [esp + 0x110]
not ebx
mov edx, eax
mov eax, dword [esp + 0xb8]
xor eax, dword [esp + 0xec]
rol edx, 0xd
rol esi, 9
and ebx, edx
xor ebx, ecx
mov dword [esp + 0xbc], ebx
mov ebx, edx
rol eax, 4
not ebx
and ebx, eax
xor ebx, edi
mov dword [esp + 0xb8], ebx
mov ebx, eax
not ebx
and ebx, esi
xor ebx, edx
mov dword [esp + 0xb4], ebx
mov ebx, esi
not ebx
and ebx, ecx
not ecx
and ecx, edi
xor ebx, eax
mov eax, dword [esp + 0x9c]
xor ecx, esi
mov dword [esp + 0xb0], ebx
xor eax, dword [esp + 0xf0]
mov dword [esp + 0xac], ecx
mov ecx, dword [esp + 0x58]
xor ecx, dword [esp + 0x110]
mov edi, dword [esp + 0xa4]
xor edi, dword [esp + 0xf4]
rol eax, 0xe
mov ebx, ecx
mov ecx, dword [esp + 0x98]
xor ecx, dword [esp + 0x100]
ror ebx, 0xe
rol edi, 8
mov esi, ebx
not esi
mov edx, ecx
mov ecx, dword [esp + 0x88]
xor ecx, dword [esp + 0x108]
rol edx, 5
and esi, edx
xor esi, eax
mov dword [esp + 0xa8], esi
mov esi, edx
ror ecx, 4
not esi
and esi, edi
xor esi, ebx
mov dword [esp + 0xa4], esi
mov esi, edi
not esi
and esi, ecx
xor esi, edx
mov dword [esp + 0xa0], esi
mov esi, ecx
not esi
mov edx, esi
and edx, eax
not eax
and eax, ebx
mov esi, edx
mov ebx, eax
xor esi, edi
mov edi, dword [esp + 0x8c]
xor ebx, ecx
xor edi, dword [esp + 0x104]
mov dword [esp + 0x9c], esi
mov dword [esp + 0x98], ebx
mov ecx, dword [esp + 0x64]
mov ebx, dword [esp + 0x84]
xor ebx, dword [esp + 0xf8]
xor ecx, dword [esp + 0xf0]
mov eax, dword [esp + 0x6c]
ror edi, 4
xor eax, dword [esp + 0x10c]
mov esi, edi
not esi
ror ebx, 1
mov edx, ecx
mov ecx, dword [esp + 0x90]
xor ecx, dword [esp + 0x100]
ror edx, 0xc
ror eax, 0xb
and esi, edx
xor esi, ebx
mov dword [esp + 0x94], esi
mov esi, edx
rol ecx, 1
not esi
and esi, eax
xor esi, edi
mov dword [esp + 0x90], esi
mov esi, eax
not esi
and esi, ecx
xor esi, edx
mov edx, ecx
not edx
mov dword [esp + 0x8c], esi
and edx, ebx
not ebx
and ebx, edi
xor edx, eax
xor ebx, ecx
mov ecx, dword [esp + 0x74]
xor ecx, dword [esp + 0xfc]
mov dword [esp + 0x84], ebx
mov ebx, dword [esp + 0x80]
xor ebx, dword [esp + 0x10c]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x78]
ror ecx, 0xa
mov dword [esp + 0xe8], ecx
mov ecx, dword [esp + 0x70]
mov esi, ebx
xor ecx, dword [esp + 0x108]
mov ebx, dword [esp + 0x7c]
xor ebx, dword [esp + 0xf8]
mov eax, dword [esp + 0xe8]
rol ecx, 0xa
not eax
ror ebx, 0xb
xor edx, dword [esp + 0xf0]
add dword [esp + 0x120], 0x10
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x120]
and eax, ebx
mov edi, dword [esp + 0x7c]
mov ecx, dword [ecx - 4]
rol edx, 7
xor ecx, esi
xor eax, ecx
mov ecx, ebx
not ecx
mov dword [esp + 0x80], eax
mov eax, ecx
mov ecx, dword [esp + 0xe8]
and eax, edi
xor ecx, eax
mov dword [esp + 0x7c], ecx
mov ecx, edi
not ecx
mov eax, ecx
and eax, edx
mov ecx, eax
xor ecx, ebx
mov dword [esp + 0x78], ecx
mov ecx, edx
not ecx
mov eax, ecx
and eax, esi
not esi
mov ecx, eax
xor ecx, edi
mov dword [esp + 0x74], ecx
and esi, dword [esp + 0xe8]
mov edi, dword [esp + 0x60]
xor edi, dword [esp + 0xf8]
mov ebx, dword [esp + 0x68]
xor ebx, dword [esp + 0x104]
mov ecx, esi
xor ecx, edx
mov edx, dword [esp + 0x5c]
xor edx, dword [esp + 0xf0]
mov esi, edi
mov dword [esp + 0x70], ecx
mov ecx, ebx
mov ebx, dword [esp + 0x3c]
xor ebx, dword [esp + 0x100]
rol ecx, 0xe
ror esi, 2
mov eax, edx
mov edx, dword [esp + 0x4c]
xor edx, dword [esp + 0x110]
rol eax, 0xa
mov edi, eax
ror ebx, 0xa
not edi
rol edx, 1
and edi, edx
xor edi, ecx
mov dword [esp + 0x6c], edi
mov edi, edx
not edi
and edi, ebx
xor edi, eax
mov dword [esp + 0x68], edi
mov edi, ebx
not edi
and edi, esi
xor edi, edx
mov edx, esi
not edx
mov dword [esp + 0x64], edi
mov edi, edx
and edi, ecx
not ecx
mov edx, edi
mov edi, dword [esp + 0x30]
xor edx, ebx
and ecx, eax
mov ebx, dword [esp + 0x48]
xor ebx, dword [esp + 0xf4]
mov dword [esp + 0x60], edx
mov edx, ecx
mov ecx, dword [esp + 0x54]
xor ecx, dword [esp + 0xf0]
xor edx, esi
mov eax, dword [esp + 0x50]
xor eax, dword [esp + 0x100]
mov dword [esp + 0x5c], edx
xor edi, dword [esp + 0x10c]
mov esi, ebx
mov ebx, dword [esp + 0x1c]
xor ebx, dword [esp + 0x108]
rol esi, 3
mov edx, ecx
mov ecx, esi
rol edx, 4
not ecx
rol edi, 9
rol ebx, 0xc
and ecx, ebx
xor ecx, eax
mov dword [esp + 0x58], ecx
mov ecx, ebx
not ecx
and ecx, edx
xor ecx, esi
mov dword [esp + 0x54], ecx
mov ecx, edx
not ecx
and ecx, edi
xor ecx, ebx
mov ebx, edi
not ebx
mov dword [esp + 0x50], ecx
and ebx, eax
not eax
xor ebx, edx
and eax, esi
mov dword [esp + 0x4c], ebx
mov ebx, eax
xor ebx, edi
mov dword [esp + 0x48], ebx
mov eax, dword [esp + 0x38]
mov ebx, dword [esp + 0x44]
xor ebx, dword [esp + 0x10c]
mov ecx, dword [esp + 0x34]
xor ecx, dword [esp + 0xfc]
xor eax, dword [esp + 0xec]
mov esi, dword [esp + 0x24]
mov edi, dword [esp + 0x10]
xor esi, dword [esp + 0x104]
ror ebx, 0xe
xor edi, dword [esp + 0xf8]
mov edx, ecx
mov ecx, ebx
rol edx, 5
not ecx
rol eax, 0xd
and ecx, edx
ror esi, 4
rol edi, 7
xor ecx, eax
mov dword [esp + 0x44], ecx
mov ecx, edx
not ecx
and ecx, edi
xor ecx, ebx
mov dword [esp + 0x40], ecx
mov ecx, edi
not ecx
and ecx, esi
xor ecx, edx
mov edx, dword [esp + 0x14]
xor edx, dword [esp + 0x110]
mov dword [esp + 0x3c], ecx
mov ecx, esi
not ecx
and ecx, eax
not eax
xor ecx, edi
and eax, ebx
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x38], ecx
mov ecx, eax
mov eax, dword [esp + 0x28]
xor ecx, esi
mov esi, dword [esp + 0x20]
xor esi, dword [esp + 0xf4]
xor eax, dword [esp + 0x108]
xor edi, dword [esp + 0xfc]
ror edx, 0xc
mov dword [esp + 0x34], ecx
mov ebx, esi
ror ebx, 1
ror eax, 5
mov ecx, edi
mov esi, ebx
mov ebx, eax
mov eax, dword [esp + 0x18]
xor eax, dword [esp + 0xec]
mov edi, ebx
rol ecx, 1
not edi
ror eax, 0xd
and edi, eax
xor edi, esi
mov dword [esp + 0x30], edi
mov edi, eax
not edi
and edi, edx
xor edi, ebx
mov dword [esp + 0x2c], edi
mov edi, edx
not edi
and edi, ecx
xor edi, eax
mov eax, ecx
not eax
mov dword [esp + 0x28], edi
mov edi, eax
and edi, esi
not esi
and esi, ebx
mov eax, edi
xor eax, edx
xor esi, ecx
cmp dword [esp + 0x120], 0x872e00
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], esi
jne 0x493574
movd xmm4, dword [esp + 0x7c]
mov eax, dword [esp + 0xc]
movd xmm1, dword [esp + 0xe0]
movd xmm0, dword [esp + 0xe4]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x80]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x74]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xd8]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x78]
movups xmmword [eax], xmm0
movd xmm0, dword [esp + 0xdc]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x6c]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xd0]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x70]
movups xmmword [eax + 0x10], xmm0
movd xmm0, dword [esp + 0xd4]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x64]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xc8]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x68]
movups xmmword [eax + 0x20], xmm0
movd xmm0, dword [esp + 0xcc]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x5c]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xc0]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x60]
movups xmmword [eax + 0x30], xmm0
movd xmm0, dword [esp + 0xc4]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x54]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xb8]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x58]
movups xmmword [eax + 0x40], xmm0
movd xmm0, dword [esp + 0xbc]
punpckldq xmm0, xmm4
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xb0]
movups xmmword [eax + 0x50], xmm0
movd xmm4, dword [esp + 0x4c]
mov ebx, dword [esp + 0x84]
movd xmm0, dword [esp + 0xb4]
mov dword [eax + 0xc4], esi
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x50]
movd xmm5, dword [esp + 0x30]
mov dword [eax + 0xc0], ebx
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x44]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xa8]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x48]
movups xmmword [eax + 0x60], xmm0
movd xmm0, dword [esp + 0xac]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x3c]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0xa0]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x40]
movups xmmword [eax + 0x70], xmm0
movd xmm0, dword [esp + 0xa4]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x34]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0x98]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x38]
movups xmmword [eax + 0x80], xmm0
movd xmm0, dword [esp + 0x9c]
punpckldq xmm0, xmm4
movd xmm4, dword [esp + 0x2c]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0x90]
punpckldq xmm1, xmm4
movd xmm4, dword [esp + 0x24]
movups xmmword [eax + 0x90], xmm0
movd xmm0, dword [esp + 0x94]
punpckldq xmm0, xmm5
movd xmm5, dword [esp + 0x28]
punpcklqdq xmm0, xmm1
movd xmm1, dword [esp + 0x88]
punpckldq xmm1, xmm4
movups xmmword [eax + 0xa0], xmm0
movd xmm0, dword [esp + 0x8c]
punpckldq xmm0, xmm5
punpcklqdq xmm0, xmm1
movups xmmword [eax + 0xb0], xmm0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea eax, [ebx + 0x68]
mov dword [esp + 0x120], eax
lea esi, [esi]
mov esi, dword [edx]
add edx, 8
mov ecx, esi
mov eax, esi
shr ecx, 1
xor ecx, esi
and ecx, 0x22222222
lea esi, [ecx + ecx]
xor eax, ecx
xor esi, eax
mov edi, esi
shr edi, 2
xor edi, esi
and edi, 0xc0c0c0c
lea eax, [edi*4]
xor esi, edi
mov edi, dword [edx - 4]
xor esi, eax
mov ecx, esi
mov eax, esi
shr ecx, 4
xor ecx, esi
and ecx, 0xf000f0
xor eax, ecx
shl ecx, 4
xor eax, ecx
mov esi, eax
shr esi, 8
xor esi, eax
and esi, 0xff00
xor eax, esi
shl esi, 8
mov ecx, eax
xor ecx, esi
mov esi, edi
shr esi, 1
xor esi, edi
and esi, 0x22222222
lea eax, [esi + esi]
xor edi, esi
xor eax, edi
mov edi, eax
shr edi, 2
xor edi, eax
and edi, 0xc0c0c0c
xor eax, edi
shl edi, 2
xor eax, edi
movzx edi, cx
shr ecx, 0x10
mov esi, eax
shr esi, 4
xor esi, eax
and esi, 0xf000f0
xor eax, esi
shl esi, 4
xor esi, eax
mov eax, esi
shr eax, 8
xor eax, esi
and eax, 0xff00
xor esi, eax
shl eax, 8
xor eax, esi
mov esi, eax
xor ax, ax
shl esi, 0x10
or eax, ecx
or esi, edi
xor dword [ebx], esi
add ebx, 8
xor dword [ebx - 4], eax
cmp ebx, dword [esp + 0x120]
jne 0x494760
jmp 0x493384