Function at 0x100424d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x180
mov eax, dword [esp + 0x184]
xorps xmm0, xmm0
movlpd qword [esp + 4], xmm0
test eax, eax
je 0x100424f8
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0xdc], edx
jmp 0x10042507
mov ecx, dword [esp + 8]
mov dword [esp + 0xdc], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0x88], ecx
mov dword [esp + 0x144], eax
movlpd qword [esp + 4], xmm0
je 0x1004252b
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x64], edx
jmp 0x10042537
mov ecx, dword [esp + 8]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0xb8], ecx
mov dword [esp + 0x148], eax
movlpd qword [esp + 4], xmm0
je 0x10042565
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0xe4], edx
mov dword [esp + 0xe8], ecx
jmp 0x1004257b
mov ecx, dword [esp + 8]
mov dword [esp + 0xe8], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0xe4], ecx
add eax, 8
movlpd qword [esp + 4], xmm0
mov dword [esp + 0x14c], eax
je 0x10042598
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x54], edx
jmp 0x100425a4
mov ecx, dword [esp + 8]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0xe0], ecx
mov dword [esp + 0x150], eax
movlpd qword [esp + 4], xmm0
je 0x100425cb
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x10c], edx
jmp 0x100425da
mov ecx, dword [esp + 8]
mov dword [esp + 0x10c], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0x104], ecx
mov dword [esp + 0x17c], eax
movlpd qword [esp + 4], xmm0
je 0x10042605
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0xb0], edx
mov dword [esp + 0x5c], ecx
jmp 0x10042618
mov ecx, dword [esp + 8]
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0xb0], ecx
add eax, 8
movlpd qword [esp + 4], xmm0
mov dword [esp + 0x154], eax
je 0x1004263c
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0xac], edx
mov dword [esp + 0x58], ecx
jmp 0x1004264f
mov ecx, dword [esp + 8]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0xac], ecx
add eax, 8
movlpd qword [esp + 4], xmm0
mov dword [esp + 0x158], eax
je 0x1004266f
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0xc0], edx
jmp 0x1004267e
mov ecx, dword [esp + 8]
mov dword [esp + 0xc0], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0xbc], ecx
mov dword [esp + 0x15c], eax
movlpd qword [esp + 4], xmm0
je 0x100426ac
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0x90], edx
mov dword [esp + 0xfc], ecx
jmp 0x100426c2
mov ecx, dword [esp + 8]
mov dword [esp + 0xfc], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x90], ecx
add eax, 8
movlpd qword [esp + 4], xmm0
mov dword [esp + 0x160], eax
je 0x100426e2
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0xd0], edx
jmp 0x100426f1
mov ecx, dword [esp + 8]
mov dword [esp + 0xd0], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0x108], ecx
mov dword [esp + 0x164], eax
movlpd qword [esp + 4], xmm0
je 0x10042715
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x50], edx
jmp 0x10042721
mov ecx, dword [esp + 8]
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0x94], ecx
mov dword [esp + 0x168], eax
movlpd qword [esp + 4], xmm0
je 0x10042748
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x98], edx
jmp 0x10042757
mov ecx, dword [esp + 8]
mov dword [esp + 0x98], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0xc], ecx
mov dword [esp + 0x13c], eax
movlpd qword [esp + 4], xmm0
je 0x1004277c
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x20], ecx
jmp 0x1004278c
mov ecx, dword [esp + 8]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x4c], ecx
add eax, 8
movlpd qword [esp + 4], xmm0
mov dword [esp + 0x140], eax
je 0x100427ac
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0xa4], edx
jmp 0x100427bb
mov ecx, dword [esp + 8]
mov dword [esp + 0xa4], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x16c], eax
movlpd qword [esp + 4], xmm0
je 0x100427df
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0xf0], edx
jmp 0x100427ee
mov ecx, dword [esp + 8]
mov dword [esp + 0xf0], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0xec], ecx
mov dword [esp + 0x170], eax
movlpd qword [esp + 4], xmm0
je 0x10042815
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x84], edx
jmp 0x10042824
mov ecx, dword [esp + 8]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0xd4], ecx
mov dword [esp + 0x174], eax
movlpd qword [esp + 4], xmm0
je 0x10042848
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x74], edx
jmp 0x10042854
mov ecx, dword [esp + 8]
mov dword [esp + 0x74], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0x24], ecx
mov dword [esp + 0x178], eax
movlpd qword [esp + 4], xmm0
je 0x10042878
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0xa8], edx
jmp 0x10042887
mov ecx, dword [esp + 8]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 4]
add eax, 8
mov dword [esp + 0x28], ecx
mov dword [esp + 4], eax
movlpd qword [esp + 0x6c], xmm0
je 0x100428a5
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x40], edx
jmp 0x100428b1
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xb4], ecx
movlpd qword [esp + 0x6c], xmm0
add eax, 8
je 0x100428ce
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x68], edx
jmp 0x100428da
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x68], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x60], ecx
movlpd qword [esp + 0x6c], xmm0
add eax, 8
je 0x100428f4
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x2c], edx
jmp 0x10042900
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0xd8], ecx
movlpd qword [esp + 0x6c], xmm0
add eax, 8
je 0x1004291d
mov edx, dword [eax + 4]
mov ecx, dword [eax]
mov dword [esp + 0x44], edx
jmp 0x10042929
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x10], ecx
movlpd qword [esp + 0x6c], xmm0
push ebx
push ebp
push esi
push edi
add eax, 8
je 0x10042943
mov ebp, dword [eax]
mov ecx, dword [eax + 4]
jmp 0x1004294e
mov ecx, dword [esp + 0x80]
mov ebp, dword [esp + 0x7c]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ecx
movlpd qword [esp + 0x7c], xmm0
add eax, 8
je 0x10042968
mov esi, dword [eax]
mov ecx, dword [eax + 4]
jmp 0x10042973
mov ecx, dword [esp + 0x80]
mov esi, dword [esp + 0x7c]
mov dword [esp + 0x108], esi
mov dword [esp + 0x10], ecx
movlpd qword [esp + 0x7c], xmm0
add eax, 8
je 0x100429a6
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x88], edx
mov dword [esp + 0x58], eax
mov dword [esp + 0x144], 0
jmp 0x100429e2
mov eax, dword [esp + 0x80]
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x88], edx
mov dword [esp + 0x58], eax
mov dword [esp + 0x144], 0
jmp 0x100429e2
mov edx, dword [esp + 0x88]
mov esi, dword [esp + 0x108]
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x3c]
xor eax, dword [esp + 0x94]
xor eax, dword [esp + 0x60]
xor eax, dword [esp + 0x6c]
xor eax, dword [esp + 0xec]
mov dword [esp + 0x4c], eax
mov eax, ebp
xor eax, dword [esp + 0x38]
xor eax, dword [esp + 0x5c]
xor eax, dword [esp + 0xcc]
xor eax, dword [esp + 0xf4]
xor esi, dword [esp + 0xc4]
mov edi, dword [esp + 0x54]
xor edi, dword [esp + 0x84]
xor edi, dword [esp + 0xa8]
xor esi, dword [esp + 0x8c]
mov ecx, dword [esp + 0xe8]
xor ecx, dword [esp + 0xe4]
xor ecx, dword [esp + 0xa4]
xor ecx, dword [esp + 0xc0]
mov ebx, dword [esp + 0x20]
xor ebx, dword [esp + 0x34]
xor edi, dword [esp + 0x68]
xor esi, dword [esp + 0xa0]
xor edi, dword [esp + 0x74]
xor ecx, dword [esp + 0x98]
xor ebx, dword [esp + 0x1c]
xor esi, dword [esp + 0xf0]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x50]
xor eax, dword [esp + 0xb4]
xor eax, dword [esp + 0x10c]
xor eax, dword [esp + 0x64]
xor ebx, dword [esp + 0xbc]
xor ebx, dword [esp + 0xc8]
mov ebp, dword [esp + 0x28]
xor ebp, dword [esp + 0xb8]
xor ebp, dword [esp + 0x30]
xor ebp, dword [esp + 0xd0]
mov dword [esp + 0x104], eax
mov eax, edi
xor ebp, dword [esp + 0xf8]
shr eax, 0x1f
mov dword [esp + 0x40], eax
mov eax, ebx
mov dword [esp + 0x9c], ecx
mov ecx, edi
shld ecx, eax, 1
mov dword [esp + 0xac], esi
mov esi, edx
mov edx, dword [esp + 0x58]
add eax, eax
or dword [esp + 0x40], eax
xor eax, eax
xor edx, dword [esp + 0x78]
or eax, ecx
xor edx, dword [esp + 0x100]
mov ecx, ebp
xor edx, dword [esp + 0xe0]
xor edx, dword [esp + 0x11c]
xor esi, dword [esp + 0x70]
xor eax, edx
xor esi, dword [esp + 0xfc]
xor esi, dword [esp + 0x118]
xor esi, dword [esp + 0x114]
xor dword [esp + 0x40], esi
mov dword [esp + 0xdc], eax
mov eax, ebp
shr eax, 0x1f
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x44]
shld ecx, eax, 1
add eax, eax
or dword [esp + 0x48], eax
xor eax, eax
or eax, ecx
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x48]
xor eax, dword [esp + 0x9c]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x90]
xor eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x104]
mov dword [esp + 0x90], eax
mov eax, ecx
shr eax, 0x1f
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xac]
shld ecx, eax, 1
add eax, eax
or dword [esp + 0x2c], eax
xor eax, eax
or eax, ecx
xor dword [esp + 0x2c], ebx
xor eax, edi
xor ecx, ecx
mov dword [esp + 0xd4], eax
xor ebx, ebx
mov eax, edx
xor edi, edi
shr eax, 0x1f
shld edx, esi, 1
or ecx, edx
add esi, esi
or eax, esi
xor ecx, ebp
xor eax, dword [esp + 0x44]
xor ebp, ebp
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x4c]
mov edx, eax
mov dword [esp + 0xd8], ecx
mov ecx, dword [esp + 0x9c]
shld eax, ecx, 1
shr edx, 0x1f
or ebx, eax
add ecx, ecx
mov eax, dword [esp + 0x40]
or edx, ecx
xor eax, dword [esp + 0x98]
xor dword [esp + 0xac], edx
mov edx, dword [esp + 0xbc]
xor edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x68]
xor ecx, dword [esp + 0x90]
xor ebx, dword [esp + 0x104]
mov dword [esp + 0x138], eax
mov eax, dword [esp + 0xdc]
xor eax, dword [esp + 0xec]
mov dword [esp + 0x134], eax
mov eax, edx
shrd edx, ecx, 0x14
shl eax, 0xc
shr ecx, 0x14
or ebp, edx
or eax, ecx
mov dword [esp + 0x9c], ebx
mov ecx, dword [esp + 0x5c]
xor edx, edx
xor ecx, dword [esp + 0x2c]
mov dword [esp + 0x44], eax
mov ebx, ecx
mov eax, dword [esp + 0x30]
xor eax, dword [esp + 0xd4]
shrd ecx, eax, 0x15
shl ebx, 0xb
shr eax, 0x15
or edi, ecx
mov ecx, dword [esp + 0x50]
or ebx, eax
xor ecx, dword [esp + 0xd8]
mov eax, dword [esp + 0xc4]
mov esi, ecx
xor eax, dword [esp + 0xb0]
shld ecx, eax, 0x15
shr esi, 0xb
shl eax, 0x15
or esi, eax
or edx, ecx
mov dword [esp + 0x98], esi
mov dword [esp + 0x7c], edx
mov edx, dword [esp + 0x88]
xor eax, eax
xor edx, dword [esp + 0xac]
mov esi, dword [esp + 0x58]
xor esi, dword [esp + 0x9c]
mov ecx, esi
shld esi, edx, 0xe
shr ecx, 0x12
shl edx, 0xe
or eax, esi
or ecx, edx
mov esi, ebp
mov edx, dword [esp + 0x44]
not esi
not edx
mov dword [esp + 0x124], ecx
mov ecx, dword [esp + 0x144]
and edx, ebx
and esi, edi
xor edx, dword [ecx + 0x100759cc]
xor esi, dword [ecx + 0x100759c8]
xor esi, dword [esp + 0x138]
mov dword [esp + 0xbc], edx
mov edx, dword [esp + 0x134]
xor dword [esp + 0xbc], edx
mov edx, edi
not edx
mov ecx, dword [esp + 0x124]
mov dword [esp + 0x30], edx
mov edx, ebx
not edx
mov dword [esp + 0xec], esi
mov esi, dword [esp + 0x98]
and dword [esp + 0x30], esi
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x7c]
mov esi, dword [esp + 0x4c]
mov dword [esp + 0x88], edx
and esi, edx
not dword [esp + 0x88]
and dword [esp + 0x88], eax
xor dword [esp + 0x88], ebx
mov ebx, eax
xor esi, dword [esp + 0x44]
not ebx
and ebx, dword [esp + 0x134]
xor ebx, edx
xor dword [esp + 0x30], ebp
mov edx, dword [esp + 0x134]
mov dword [esp + 0x120], ebx
not edx
mov ebx, dword [esp + 0x138]
and edx, dword [esp + 0x44]
not ebx
mov dword [esp + 0x4c], esi
and ebx, ebp
mov esi, dword [esp + 0x98]
xor ebx, ecx
mov dword [esp + 0x110], esi
xor edx, eax
not dword [esp + 0x110]
xor eax, eax
and dword [esp + 0x110], ecx
xor dword [esp + 0x110], edi
mov edi, ecx
not edi
mov dword [esp + 0x134], edx
and edi, dword [esp + 0x138]
mov edx, dword [esp + 0xf0]
xor edi, esi
xor edx, dword [esp + 0xb0]
mov dword [esp + 0x138], ebx
mov ebx, dword [esp + 0x64]
xor ebx, dword [esp + 0xd8]
mov ecx, ebx
mov dword [esp + 0x148], edi
shld ebx, edx, 0x1c
shr ecx, 4
shl edx, 0x1c
or ecx, edx
mov dword [esp + 0xc4], ecx
mov edx, dword [esp + 0xe0]
or eax, ebx
xor edx, dword [esp + 0x9c]
xor edi, edi
mov ecx, dword [esp + 0x118]
xor ebp, ebp
xor ecx, dword [esp + 0xac]
mov dword [esp + 0x5c], eax
mov eax, edx
shr eax, 0xc
shld edx, ecx, 0x14
shl ecx, 0x14
or ebp, edx
or eax, ecx
mov dword [esp + 0x7c], ebp
mov ecx, dword [esp + 0x60]
xor edx, edx
xor ecx, dword [esp + 0xdc]
mov dword [esp + 0x98], eax
mov ebx, ecx
mov eax, dword [esp + 0xa4]
xor eax, dword [esp + 0x40]
shld ecx, eax, 3
shr ebx, 0x1d
shl eax, 3
or edi, ecx
mov ecx, dword [esp + 0x84]
or ebx, eax
xor ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x34]
xor eax, dword [esp + 0x48]
mov esi, eax
mov dword [esp + 0x68], edi
shrd eax, ecx, 0x13
shl esi, 0xd
or edx, eax
shr ecx, 0x13
mov eax, dword [esp + 0x28]
or esi, ecx
xor eax, dword [esp + 0xd4]
mov dword [esp + 0x28], eax
xor eax, eax
mov ebp, dword [esp + 0x28]
mov dword [esp + 0x140], edx
mov edx, dword [esp + 0x24]
xor edx, dword [esp + 0x2c]
mov ecx, edx
not dword [esp + 0x68]
shrd edx, ebp, 3
and dword [esp + 0x68], esi
or eax, edx
shr ebp, 3
mov dword [esp + 0x13c], eax
mov eax, dword [esp + 0x98]
not eax
shl ecx, 0x1d
mov dword [esp + 0x44], eax
or ecx, ebp
mov edx, dword [esp + 0x44]
mov dword [esp + 0x28], ebp
and edx, ebx
mov ebp, dword [esp + 0x7c]
mov eax, ebp
xor edx, dword [esp + 0xc4]
not eax
and eax, edi
mov dword [esp + 0x44], edx
xor eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x140]
mov dword [esp + 0x124], eax
mov eax, ebx
not eax
and eax, edx
xor eax, dword [esp + 0x98]
xor dword [esp + 0x68], ebp
mov dword [esp + 0xf0], eax
mov eax, edx
not eax
mov dword [esp + 0x60], eax
mov eax, esi
not eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x13c]
and dword [esp + 0x60], eax
xor dword [esp + 0x60], ebx
mov ebx, eax
and dword [esp + 0x34], ecx
not ebx
xor dword [esp + 0x34], edi
mov edi, dword [esp + 0xc4]
mov dword [esp + 0x12c], ebx
mov ebx, ecx
and dword [esp + 0x12c], edi
not ebx
xor dword [esp + 0x12c], edx
not edi
mov edx, dword [esp + 0xc8]
xor edx, dword [esp + 0x48]
and edi, dword [esp + 0x98]
mov dword [esp + 0x130], ebx
xor edi, eax
mov ebx, dword [esp + 0x5c]
xor eax, eax
and dword [esp + 0x130], ebx
not ebx
and ebx, ebp
xor dword [esp + 0x130], esi
xor ebx, ecx
mov dword [esp + 0xc4], edi
mov dword [esp + 0x5c], ebx
xor edi, edi
mov ebx, dword [esp + 0x74]
xor ebp, ebp
xor ebx, dword [esp + 0x90]
mov ecx, ebx
shld ebx, edx, 1
shr ecx, 0x1f
or eax, ebx
add edx, edx
or ecx, edx
mov dword [esp + 0x104], eax
mov edx, dword [esp + 0xd0]
xor edx, dword [esp + 0xd4]
mov dword [esp + 0x128], ecx
mov eax, edx
mov ecx, dword [esp + 0xcc]
xor ecx, dword [esp + 0x2c]
shld edx, ecx, 6
shr eax, 0x1a
shl ecx, 6
or ebp, edx
or eax, ecx
mov dword [esp + 0x7c], ebp
mov ecx, dword [esp + 0xb4]
xor edx, edx
xor ecx, dword [esp + 0xd8]
mov dword [esp + 0x74], eax
mov ebx, ecx
mov eax, dword [esp + 0x8c]
xor eax, dword [esp + 0xb0]
shld ecx, eax, 0x19
shr ebx, 7
shl eax, 0x19
or edi, ecx
mov ecx, dword [esp + 0x78]
or ebx, eax
xor ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x70]
mov esi, ecx
xor eax, dword [esp + 0xac]
shld ecx, eax, 8
shr esi, 0x18
shl eax, 8
or edx, ecx
or esi, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x140], esi
mov esi, dword [esp + 0xe8]
xor esi, dword [esp + 0x40]
xor eax, dword [esp + 0xdc]
mov dword [esp + 0x3c], eax
mov ecx, eax
shld dword [esp + 0x3c], esi, 0x12
shr ecx, 0xe
xor eax, eax
or eax, dword [esp + 0x3c]
shl esi, 0x12
or ecx, esi
mov dword [esp + 0x58], ebp
mov esi, dword [esp + 0x74]
not dword [esp + 0x58]
not esi
and dword [esp + 0x58], edi
and esi, ebx
xor esi, dword [esp + 0x128]
mov dword [esp + 0x13c], ecx
mov ecx, dword [esp + 0x104]
xor dword [esp + 0x58], ecx
mov dword [esp + 0xb4], esi
mov esi, ebx
not esi
mov dword [esp + 0x64], edx
not dword [esp + 0x64]
and dword [esp + 0x64], eax
xor dword [esp + 0x64], edi
mov dword [esp + 0xe8], esi
mov esi, edi
mov ecx, dword [esp + 0xe8]
not esi
mov dword [esp + 0x3c], esi
mov esi, dword [esp + 0x140]
and ecx, esi
xor ecx, dword [esp + 0x74]
and dword [esp + 0x3c], edx
mov dword [esp + 0xe8], ecx
mov ecx, dword [esp + 0x13c]
mov edi, ecx
mov dword [esp + 0x70], esi
not edi
not dword [esp + 0x70]
and dword [esp + 0x70], ecx
xor dword [esp + 0x70], ebx
mov ebx, eax
and edi, dword [esp + 0x128]
not ebx
and ebx, dword [esp + 0x104]
xor edi, esi
xor ebx, edx
xor dword [esp + 0x3c], ebp
mov edx, dword [esp + 0x104]
mov dword [esp + 0x140], ebx
not edx
mov ebx, dword [esp + 0x128]
and edx, ebp
xor edx, eax
mov dword [esp + 0x13c], edi
not ebx
mov dword [esp + 0x104], edx
and ebx, dword [esp + 0x74]
xor eax, eax
mov edx, dword [esp + 0x114]
xor ebx, ecx
xor edx, dword [esp + 0xac]
xor ebp, ebp
mov dword [esp + 0x128], ebx
mov ebx, dword [esp + 0x11c]
xor ebx, dword [esp + 0x9c]
mov ecx, ebx
shld ebx, edx, 0x1b
shr ecx, 5
shl edx, 0x1b
or eax, ebx
or ecx, edx
mov dword [esp + 0x78], eax
mov edx, dword [esp + 0xc0]
xor edx, dword [esp + 0x40]
mov dword [esp + 0x8c], ecx
mov eax, edx
mov ecx, dword [esp + 0x6c]
xor ecx, dword [esp + 0xdc]
shrd edx, ecx, 0x1c
shl eax, 4
shr ecx, 0x1c
or eax, ecx
xor edi, edi
mov ecx, dword [esp + 0xa8]
or ebp, edx
xor ecx, dword [esp + 0x90]
xor edx, edx
mov dword [esp + 0x6c], eax
mov ebx, ecx
mov eax, dword [esp + 0x1c]
xor eax, dword [esp + 0x48]
shld ecx, eax, 0xa
shr ebx, 0x16
shl eax, 0xa
or edi, ecx
mov ecx, dword [esp + 0xb8]
or ebx, eax
xor ecx, dword [esp + 0xd4]
mov eax, dword [esp + 0x38]
mov esi, ecx
xor eax, dword [esp + 0x2c]
shld ecx, eax, 0xf
shr esi, 0x11
shl eax, 0xf
or edx, ecx
or esi, eax
mov dword [esp + 0x7c], ebp
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0xd8]
mov dword [esp + 0x10], eax
xor eax, eax
mov ebp, dword [esp + 0x10]
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x108]
xor esi, dword [esp + 0xb0]
mov ecx, esi
shrd esi, ebp, 8
shl ecx, 0x18
or eax, esi
shr ebp, 8
mov dword [esp + 0x74], eax
or ecx, ebp
mov dword [esp + 0x10], ebp
mov ebp, dword [esp + 0x7c]
mov eax, ebp
not eax
mov dword [esp + 0x108], eax
mov eax, dword [esp + 0x6c]
mov esi, dword [esp + 0x108]
not eax
and eax, edi
and esi, ebx
xor eax, dword [esp + 0x78]
xor esi, dword [esp + 0x8c]
mov dword [esp + 0x7c], eax
mov eax, ebx
not eax
mov dword [esp + 0x108], esi
mov esi, dword [esp + 0x1c]
mov dword [esp + 0xa4], eax
mov eax, edi
and dword [esp + 0xa4], esi
not eax
xor dword [esp + 0xa4], ebp
and eax, edx
xor eax, dword [esp + 0x6c]
mov dword [esp + 0xa8], eax
mov eax, esi
not eax
mov dword [esp + 0x38], eax
mov eax, edx
not eax
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x74]
and dword [esp + 0x38], eax
xor dword [esp + 0x38], ebx
mov ebx, ecx
and dword [esp + 0xb8], ecx
not ebx
xor dword [esp + 0xb8], edi
mov edi, eax
not edi
and ebx, dword [esp + 0x78]
xor ebx, edx
and edi, dword [esp + 0x8c]
mov edx, dword [esp + 0x78]
xor edi, esi
not edx
mov dword [esp + 0xe0], ebx
and edx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x8c]
xor edx, ecx
not ebx
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0xf8]
and ebx, ebp
xor edx, dword [esp + 0xd4]
xor ebx, eax
mov dword [esp + 0x8c], ebx
xor eax, eax
mov ebx, dword [esp + 0xf4]
xor ebp, ebp
xor ebx, dword [esp + 0x2c]
mov ecx, ebx
mov dword [esp + 0xc0], edi
shrd ebx, edx, 2
shl ecx, 0x1e
xor edi, edi
shr edx, 2
or eax, ebx
or ecx, edx
mov dword [esp + 0x84], eax
mov edx, dword [esp + 0xa0]
xor edx, dword [esp + 0xb0]
mov dword [esp + 0x2c], ecx
mov eax, edx
mov ecx, dword [esp + 0x10c]
xor ecx, dword [esp + 0xd8]
shrd edx, ecx, 9
shl eax, 0x17
shr ecx, 9
or ebp, edx
or eax, ecx
xor edx, edx
mov ecx, dword [esp + 0x100]
xor ecx, dword [esp + 0x9c]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xfc]
xor eax, dword [esp + 0xac]
mov ebx, eax
shrd eax, ecx, 0x19
shl ebx, 7
shr ecx, 0x19
or edi, eax
mov eax, dword [esp + 0xe4]
or ebx, ecx
xor eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x94]
mov esi, eax
xor ecx, dword [esp + 0xdc]
shrd eax, ecx, 0x17
mov dword [esp + 0x1c], ebx
mov ebx, dword [esp + 0x54]
or edx, eax
xor ebx, dword [esp + 0x90]
xor eax, eax
mov dword [esp + 0x6c], edx
mov edx, dword [esp + 0x20]
xor edx, dword [esp + 0x48]
shr ecx, 0x17
shl esi, 9
or esi, ecx
mov ecx, ebx
shld ebx, edx, 2
shr ecx, 0x1e
shl edx, 2
or ecx, edx
mov edx, ebp
not edx
or eax, ebx
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x74]
not edx
and edx, dword [esp + 0x1c]
xor edx, dword [esp + 0x2c]
and dword [esp + 0x54], edi
mov ebx, dword [esp + 0x54]
xor ebx, dword [esp + 0x84]
mov dword [esp + 0x94], edx
mov edx, edi
mov dword [esp + 0x54], ebx
not edx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x24], edx
not ebx
mov edx, dword [esp + 0x6c]
and dword [esp + 0x24], edx
xor dword [esp + 0x24], ebp
mov dword [esp + 0x10], edx
mov edx, esi
not dword [esp + 0x10]
not edx
and dword [esp + 0x10], ecx
and edx, eax
xor dword [esp + 0x10], edi
mov edi, eax
mov dword [esp + 0x20], ebx
not edi
and ebx, esi
mov dword [esp + 0xa0], edx
xor ebx, dword [esp + 0x74]
mov edx, ecx
mov dword [esp + 0x20], ebx
not edx
mov ebx, dword [esp + 0x1c]
xor dword [esp + 0xa0], ebx
and edx, dword [esp + 0x84]
mov ebx, dword [esp + 0x2c]
and edi, ebx
not ebx
mov dword [esp + 0x50], edx
and ebx, dword [esp + 0x74]
xor edi, esi
mov edx, dword [esp + 0x6c]
xor ebx, eax
xor dword [esp + 0x50], edx
mov eax, dword [esp + 0x94]
xor eax, dword [esp + 0x7c]
xor eax, dword [esp + 0x58]
mov edx, dword [esp + 0x84]
xor eax, dword [esp + 0x124]
not edx
xor eax, dword [esp + 0xbc]
and edx, ebp
mov ebp, dword [esp + 0xa0]
xor edx, ecx
mov ecx, dword [esp + 0x54]
xor ecx, dword [esp + 0x108]
xor ecx, dword [esp + 0xb4]
xor ebp, dword [esp + 0xb8]
xor ecx, dword [esp + 0x44]
xor ebp, dword [esp + 0x64]
xor ecx, dword [esp + 0xec]
xor ebp, dword [esp + 0x34]
mov dword [esp + 0xe4], edi
mov edi, dword [esp + 0x20]
xor edi, dword [esp + 0xa8]
xor edi, dword [esp + 0x3c]
xor edi, dword [esp + 0x68]
xor edi, dword [esp + 0x4c]
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x24]
xor ebx, dword [esp + 0xa4]
xor ebx, dword [esp + 0xe8]
xor ebx, dword [esp + 0xf0]
xor ebx, dword [esp + 0x30]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x38]
xor eax, dword [esp + 0x70]
xor eax, dword [esp + 0x60]
xor eax, dword [esp + 0x110]
mov dword [esp + 0x84], edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x1c], eax
mov esi, edx
mov eax, dword [esp + 0xe4]
xor eax, dword [esp + 0xe0]
xor eax, dword [esp + 0x140]
xor eax, dword [esp + 0x130]
xor eax, dword [esp + 0x120]
mov ecx, dword [esp + 0x50]
xor ecx, dword [esp + 0xc0]
xor ecx, dword [esp + 0x13c]
xor ecx, dword [esp + 0x12c]
xor ecx, dword [esp + 0x148]
mov dword [esp + 0xb0], eax
mov eax, edi
shr eax, 0x1f
mov dword [esp + 0x40], eax
mov eax, ebx
mov edx, dword [esp + 0x2c]
xor edx, dword [esp + 0x78]
xor edx, dword [esp + 0x104]
xor edx, dword [esp + 0x5c]
xor edx, dword [esp + 0x134]
xor ebp, dword [esp + 0x88]
mov dword [esp + 0x98], ecx
mov ecx, edi
shld ecx, eax, 1
xor esi, dword [esp + 0x8c]
add eax, eax
xor esi, dword [esp + 0x128]
or dword [esp + 0x40], eax
xor eax, eax
or eax, ecx
xor esi, dword [esp + 0xc4]
xor eax, edx
xor esi, dword [esp + 0x138]
mov dword [esp + 0xd4], eax
mov ecx, ebp
mov eax, ebp
xor dword [esp + 0x40], esi
shr eax, 0x1f
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1c]
shld ecx, eax, 1
add eax, eax
or dword [esp + 0x28], eax
xor eax, eax
or eax, ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x28]
xor eax, dword [esp + 0x74]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x90]
xor eax, dword [esp + 0x6c]
mov dword [esp + 0x90], eax
mov eax, ecx
shr eax, 0x1f
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x98]
shld ecx, eax, 1
add eax, eax
or dword [esp + 0x48], eax
xor eax, eax
xor dword [esp + 0x48], ebx
or eax, ecx
xor eax, edi
xor ecx, ecx
mov dword [esp + 0xdc], eax
mov eax, edx
shld edx, esi, 1
shr eax, 0x1f
add esi, esi
or ecx, edx
or eax, esi
xor ecx, ebp
xor eax, dword [esp + 0x1c]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x6c]
mov edx, eax
mov dword [esp + 0xac], ecx
shr edx, 0x1f
mov ecx, dword [esp + 0x74]
xor ebx, ebx
shld eax, ecx, 1
xor ebp, ebp
xor edi, edi
or ebx, eax
add ecx, ecx
mov eax, dword [esp + 0xec]
or edx, ecx
xor eax, dword [esp + 0x40]
xor edx, dword [esp + 0x98]
mov ecx, dword [esp + 0x68]
xor ecx, dword [esp + 0x90]
xor dword [esp + 0xb0], ebx
mov dword [esp + 0x114], eax
mov eax, dword [esp + 0xbc]
xor eax, dword [esp + 0xd4]
mov dword [esp + 0x11c], eax
mov dword [esp + 0xd8], edx
mov edx, dword [esp + 0xf0]
xor edx, dword [esp + 0x28]
mov eax, edx
shrd edx, ecx, 0x14
shl eax, 0xc
shr ecx, 0x14
or ebp, edx
or eax, ecx
mov dword [esp + 0xbc], ebp
mov ecx, dword [esp + 0x70]
xor edx, edx
xor ecx, dword [esp + 0x48]
mov dword [esp + 0x1c], eax
mov ebx, ecx
mov eax, dword [esp + 0x64]
xor eax, dword [esp + 0xdc]
shrd ecx, eax, 0x15
shl ebx, 0xb
or edi, ecx
shr eax, 0x15
mov ecx, dword [esp + 0xc0]
or ebx, eax
xor ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0xe0]
xor eax, dword [esp + 0xac]
mov esi, eax
mov dword [esp + 0xc8], edi
shld eax, ecx, 0x15
shr esi, 0xb
or edx, eax
shl ecx, 0x15
mov eax, dword [esp + 0xd8]
or esi, ecx
xor dword [esp + 0x84], eax
mov eax, dword [esp + 0x2c]
xor eax, dword [esp + 0xb0]
mov ebp, dword [esp + 0x84]
mov ecx, eax
mov dword [esp + 0x2c], eax
xor eax, eax
shld dword [esp + 0x2c], ebp, 0xe
or eax, dword [esp + 0x2c]
shr ecx, 0x12
shl ebp, 0xe
or ecx, ebp
mov dword [esp + 0x6c], esi
mov esi, dword [esp + 0x144]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0xc0], ecx
not ebp
mov ecx, dword [esp + 0xbc]
and ebp, ebx
xor ebp, dword [esi + 0x100759d4]
not ecx
and ecx, edi
mov dword [esp + 0xec], ebp
xor ecx, dword [esi + 0x100759d0]
xor ecx, dword [esp + 0x114]
mov dword [esp + 0x98], ecx
mov ecx, ebp
xor ecx, dword [esp + 0x11c]
mov dword [esp + 0xec], ecx
mov esi, dword [esp + 0x6c]
mov ecx, ebx
not ecx
mov ebp, dword [esp + 0xbc]
and ecx, edx
not dword [esp + 0xc8]
xor ecx, dword [esp + 0x1c]
mov dword [esp + 0x74], ecx
mov ecx, esi
not ecx
and dword [esp + 0xc8], esi
mov dword [esp + 0xf4], ecx
mov ecx, edx
not ecx
xor dword [esp + 0xc8], ebp
mov dword [esp + 0xf8], ecx
and dword [esp + 0xf8], eax
xor dword [esp + 0xf8], ebx
mov ebx, eax
mov ecx, dword [esp + 0xc0]
not ebx
and dword [esp + 0xf4], ecx
xor dword [esp + 0xf4], edi
mov edi, ecx
mov dword [esp + 0x64], ebx
not edi
mov ebx, dword [esp + 0x114]
and edi, ebx
mov dword [esp + 0xf0], edi
not ebx
mov edi, dword [esp + 0x11c]
and ebx, ebp
and dword [esp + 0x64], edi
xor ebx, ecx
xor dword [esp + 0x64], edx
not edi
and edi, dword [esp + 0x1c]
xor ebp, ebp
mov ecx, dword [esp + 0x148]
xor edi, eax
xor ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x120]
xor eax, dword [esp + 0xac]
mov edx, eax
xor dword [esp + 0xf0], esi
shld eax, ecx, 0x1c
shr edx, 4
shl ecx, 0x1c
or edx, ecx
mov dword [esp + 0x114], ebx
mov ecx, dword [esp + 0x5c]
xor ebx, ebx
xor ecx, dword [esp + 0xb0]
or ebx, eax
mov dword [esp + 0x118], edx
mov eax, ecx
mov edx, dword [esp + 0xc4]
xor edx, dword [esp + 0xd8]
shld ecx, edx, 0x14
shr eax, 0xc
shl edx, 0x14
or ebp, ecx
mov ecx, dword [esp + 0xb4]
or eax, edx
xor ecx, dword [esp + 0x40]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x58]
xor eax, dword [esp + 0xd4]
mov dword [esp + 0xe0], ebx
mov ebx, eax
shld eax, ecx, 3
shr ebx, 0x1d
shl ecx, 3
mov dword [esp + 0x11c], edi
or ebx, ecx
mov ecx, dword [esp + 0xa4]
xor edi, edi
or edi, eax
mov dword [esp + 0x120], ebp
xor ecx, dword [esp + 0x28]
mov eax, dword [esp + 0xa8]
xor eax, dword [esp + 0x90]
xor edx, edx
mov esi, ecx
shrd ecx, eax, 0x13
shl esi, 0xd
or edx, ecx
shr eax, 0x13
mov ecx, dword [esp + 0xdc]
or esi, eax
xor dword [esp + 0xa0], ecx
mov eax, dword [esp + 0x10]
xor eax, dword [esp + 0x48]
mov ebp, dword [esp + 0xa0]
mov ecx, eax
mov dword [esp + 0x148], edx
mov edx, dword [esp + 0x1c]
not edx
mov dword [esp + 0x10], eax
shrd dword [esp + 0x10], ebp, 3
mov dword [esp + 0xc0], edx
xor eax, eax
mov edx, dword [esp + 0x120]
or eax, dword [esp + 0x10]
not edx
and edx, edi
shr ebp, 3
xor edx, dword [esp + 0xe0]
mov dword [esp + 0x6c], edx
mov edx, edi
shl ecx, 0x1d
not edx
or ecx, ebp
mov dword [esp + 0x68], edx
mov edx, dword [esp + 0x148]
mov ebp, dword [esp + 0xc0]
and ebp, ebx
and dword [esp + 0x68], esi
xor ebp, dword [esp + 0x118]
mov dword [esp + 0xcc], edx
not dword [esp + 0xcc]
and dword [esp + 0xcc], eax
xor dword [esp + 0xcc], ebx
mov dword [esp + 0xc0], ebp
mov ebp, ebx
mov dword [esp + 0xd0], esi
mov ebx, ecx
not dword [esp + 0xd0]
not ebx
and dword [esp + 0xd0], ecx
not ebp
xor dword [esp + 0xd0], edi
and ebp, edx
xor ebp, dword [esp + 0x1c]
mov edi, eax
mov dword [esp + 0x10c], ebx
not edi
mov ebx, dword [esp + 0x118]
and edi, ebx
mov dword [esp + 0xa0], edi
not ebx
mov edi, dword [esp + 0xe0]
and dword [esp + 0x10c], edi
not edi
and ebx, dword [esp + 0x1c]
xor dword [esp + 0xa0], edx
xor ebx, eax
mov eax, dword [esp + 0x4c]
xor eax, dword [esp + 0x90]
xor dword [esp + 0x10c], esi
mov edx, eax
mov dword [esp + 0xbc], ebp
mov ebp, dword [esp + 0x120]
and edi, ebp
xor dword [esp + 0x68], ebp
xor edi, ecx
mov ecx, dword [esp + 0x30]
xor ecx, dword [esp + 0x28]
mov dword [esp + 0x118], ebx
shr edx, 0x1f
xor ebx, ebx
mov dword [esp + 0xe0], edi
shld eax, ecx, 1
xor ebp, ebp
xor esi, esi
or ebx, eax
add ecx, ecx
or edx, ecx
mov dword [esp + 0x100], ebx
mov ecx, dword [esp + 0x34]
xor ecx, dword [esp + 0xdc]
mov dword [esp + 0xfc], edx
mov eax, ecx
mov edx, dword [esp + 0x60]
xor edx, dword [esp + 0x48]
shld ecx, edx, 6
shr eax, 0x1a
or ebp, ecx
shl edx, 6
mov ecx, dword [esp + 0x13c]
or eax, edx
xor ecx, dword [esp + 0x9c]
mov edx, dword [esp + 0x8c]
xor edx, dword [esp + 0xd8]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x140]
xor eax, dword [esp + 0xac]
mov ebx, eax
mov dword [esp + 0x120], ebp
shld eax, ecx, 0x19
shr ebx, 7
or esi, eax
shl ecx, 0x19
mov eax, dword [esp + 0x78]
or ebx, ecx
xor eax, dword [esp + 0xb0]
xor ecx, ecx
mov edi, eax
mov dword [esp + 0xa8], esi
shld eax, edx, 8
shr edi, 0x18
or ecx, eax
shl edx, 8
mov eax, dword [esp + 0x40]
or edi, edx
xor dword [esp + 0x54], eax
mov eax, dword [esp + 0x94]
xor eax, dword [esp + 0xd4]
mov ebp, dword [esp + 0x54]
mov edx, eax
mov dword [esp + 0x94], eax
xor eax, eax
shld dword [esp + 0x94], ebp, 0x12
not dword [esp + 0xa8]
shl ebp, 0x12
and dword [esp + 0xa8], ecx
shr edx, 0xe
or edx, ebp
or eax, dword [esp + 0x94]
mov ebp, dword [esp + 0x4c]
not ebp
mov dword [esp + 0x5c], edi
mov dword [esp + 0xa4], ebp
mov ebp, dword [esp + 0x120]
mov dword [esp + 0x60], ebp
mov ebp, dword [esp + 0xa4]
not dword [esp + 0x60]
and ebp, ebx
xor ebp, dword [esp + 0xfc]
and dword [esp + 0x60], esi
not dword [esp + 0x5c]
mov dword [esp + 0xa4], ebp
mov ebp, dword [esp + 0x60]
xor ebp, dword [esp + 0x100]
mov dword [esp + 0x60], ebp
mov ebp, ebx
not ebp
mov dword [esp + 0x30], ecx
and ebp, edi
xor ebp, dword [esp + 0x4c]
mov dword [esp + 0x1c], ebp
mov ebp, dword [esp + 0x120]
xor dword [esp + 0xa8], ebp
and dword [esp + 0x5c], edx
xor dword [esp + 0x5c], ebx
mov ebx, eax
not dword [esp + 0x30]
not ebx
and dword [esp + 0x30], eax
xor dword [esp + 0x30], esi
mov esi, edx
mov dword [esp + 0xb4], ebx
not esi
mov ebx, dword [esp + 0xfc]
and esi, ebx
mov dword [esp + 0x8c], esi
not ebx
mov esi, dword [esp + 0x100]
and dword [esp + 0xb4], esi
not esi
xor dword [esp + 0xb4], ecx
and esi, ebp
and ebx, dword [esp + 0x4c]
xor esi, eax
mov eax, dword [esp + 0x134]
xor ebx, edx
xor eax, dword [esp + 0xb0]
xor ebp, ebp
mov ecx, dword [esp + 0x138]
mov edx, eax
xor ecx, dword [esp + 0xd8]
shld eax, ecx, 0x1b
xor dword [esp + 0x8c], edi
xor edi, edi
shl ecx, 0x1b
shr edx, 5
or edx, ecx
mov dword [esp + 0xfc], ebx
mov ecx, dword [esp + 0x124]
xor ebx, ebx
xor ecx, dword [esp + 0xd4]
or ebx, eax
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0x44]
xor edx, dword [esp + 0x40]
mov eax, edx
mov dword [esp + 0x78], ebx
shrd edx, ecx, 0x1c
shl eax, 4
shr ecx, 0x1c
or ebp, edx
or eax, ecx
mov dword [esp + 0x100], esi
mov ecx, dword [esp + 0xe8]
xor edx, edx
xor ecx, dword [esp + 0x28]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x3c]
xor eax, dword [esp + 0x90]
mov ebx, eax
mov dword [esp + 0x44], ebp
shld eax, ecx, 0xa
shr ebx, 0x16
shl ecx, 0xa
or edi, eax
mov eax, dword [esp + 0xb8]
or ebx, ecx
xor eax, dword [esp + 0xdc]
mov ecx, dword [esp + 0x38]
mov esi, eax
xor ecx, dword [esp + 0x48]
shld eax, ecx, 0xf
shr esi, 0x11
shl ecx, 0xf
or edx, eax
mov eax, dword [esp + 0xe4]
or esi, ecx
mov ecx, dword [esp + 0x50]
xor eax, dword [esp + 0xac]
xor ecx, dword [esp + 0x9c]
mov dword [esp + 0xe4], eax
xor eax, eax
mov dword [esp + 0x124], esi
mov dword [esp + 0x50], ecx
mov ebp, dword [esp + 0xe4]
shrd dword [esp + 0x50], ebp, 8
mov esi, dword [esp + 0x44]
or eax, dword [esp + 0x50]
not esi
and esi, ebx
shr ebp, 8
xor esi, dword [esp + 0x70]
shl ecx, 0x18
or ecx, ebp
mov dword [esp + 0xe4], esi
mov ebp, dword [esp + 0x4c]
not ebp
mov dword [esp + 0x34], ebx
not dword [esp + 0x34]
and ebp, edi
mov esi, ebp
mov dword [esp + 0x94], ebp
xor esi, dword [esp + 0x78]
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x94], esi
mov esi, edi
not esi
mov dword [esp + 0x84], esi
mov esi, dword [esp + 0x124]
and dword [esp + 0x34], esi
mov esi, dword [esp + 0x84]
xor dword [esp + 0x34], ebp
and esi, edx
xor esi, dword [esp + 0x4c]
mov ebp, edx
mov dword [esp + 0x84], esi
not ebp
mov esi, dword [esp + 0x124]
and ebp, ecx
mov dword [esp + 0x38], esi
xor ebp, edi
not dword [esp + 0x38]
mov edi, eax
and dword [esp + 0x38], eax
not edi
xor dword [esp + 0x38], ebx
mov ebx, ecx
not ebx
mov dword [esp + 0xb8], ebp
mov dword [esp + 0x50], ebx
mov ebp, dword [esp + 0x50]
and ebp, dword [esp + 0x78]
mov ebx, dword [esp + 0x70]
and edi, ebx
mov dword [esp + 0x50], ebp
not ebx
xor dword [esp + 0x50], edx
xor edi, esi
mov edx, dword [esp + 0x78]
and ebx, dword [esp + 0x44]
not edx
and edx, dword [esp + 0x4c]
xor ebx, eax
mov eax, dword [esp + 0x88]
xor edx, ecx
mov ecx, dword [esp + 0x110]
xor ecx, dword [esp + 0x48]
xor eax, dword [esp + 0xdc]
mov dword [esp + 0x70], ebx
mov ebx, ecx
shrd ecx, eax, 2
mov dword [esp + 0x78], edx
xor edx, edx
or edx, ecx
shr eax, 2
mov ecx, dword [esp + 0x130]
mov dword [esp + 0x88], edx
mov edx, dword [esp + 0x12c]
xor edx, dword [esp + 0x9c]
shl ebx, 0x1e
or ebx, eax
mov dword [esp + 0xc4], edi
xor ecx, dword [esp + 0xac]
mov eax, edx
mov dword [esp + 0x58], ebx
shrd edx, ecx, 9
shl eax, 0x17
xor edi, edi
shr ecx, 9
xor ebp, ebp
or eax, ecx
or ebp, edx
mov ecx, dword [esp + 0x128]
xor edx, edx
xor ecx, dword [esp + 0xd8]
mov dword [esp + 0x4c], eax
mov ebx, ecx
mov eax, dword [esp + 0x104]
xor eax, dword [esp + 0xb0]
shrd ecx, eax, 0x19
shl ebx, 7
shr eax, 0x19
or edi, ecx
mov ecx, dword [esp + 0x108]
or ebx, eax
xor ecx, dword [esp + 0x40]
mov eax, dword [esp + 0x7c]
mov esi, ecx
xor eax, dword [esp + 0xd4]
shrd ecx, eax, 0x17
mov dword [esp + 0x44], ebp
shr eax, 0x17
or edx, ecx
shl esi, 9
or esi, eax
mov dword [esp + 0x7c], edx
mov eax, dword [esp + 0x24]
xor eax, dword [esp + 0x28]
mov edx, dword [esp + 0x44]
mov dword [esp + 0x24], eax
not edx
mov eax, dword [esp + 0x20]
and edx, edi
xor eax, dword [esp + 0x90]
mov ebp, dword [esp + 0x24]
mov ecx, eax
xor edx, dword [esp + 0x88]
mov dword [esp + 0x20], eax
xor eax, eax
shld dword [esp + 0x20], ebp, 2
or eax, dword [esp + 0x20]
shl ebp, 2
shr ecx, 0x1e
or ecx, ebp
mov dword [esp + 0xe8], edx
mov ebp, dword [esp + 0x4c]
not ebp
mov dword [esp + 0x20], edi
not dword [esp + 0x20]
and ebp, ebx
mov edx, ebp
mov dword [esp + 0x3c], ebp
xor edx, dword [esp + 0x58]
mov ebp, dword [esp + 0x44]
mov dword [esp + 0x3c], edx
mov edx, ebx
not edx
mov dword [esp + 0x54], edx
mov edx, dword [esp + 0x7c]
and dword [esp + 0x20], edx
xor dword [esp + 0x20], ebp
and dword [esp + 0x54], esi
mov ebp, dword [esp + 0x54]
xor ebp, dword [esp + 0x4c]
mov dword [esp + 0x54], ebp
mov ebp, esi
mov dword [esp + 0x24], edx
not ebp
not dword [esp + 0x24]
and ebp, eax
and dword [esp + 0x24], ecx
xor dword [esp + 0x24], edi
xor ebp, ebx
mov edi, ecx
mov dword [esp + 0x28], ebp
not edi
mov ebx, eax
not ebx
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x88]
and edi, ebx
mov ebp, dword [esp + 0x10]
xor edi, edx
mov edx, dword [esp + 0x58]
not ebx
and ebp, dword [esp + 0x58]
not edx
and edx, dword [esp + 0x4c]
and ebx, dword [esp + 0x44]
xor edx, eax
mov eax, dword [esp + 0x144]
xor ebx, ecx
mov dword [esp + 0x10], ebp
add eax, 0x10
xor dword [esp + 0x10], esi
mov dword [esp + 0x108], edi
mov dword [esp + 0x88], ebx
mov dword [esp + 0x58], edx
mov dword [esp + 0x144], eax
cmp eax, 0xc0
jb 0x100429d0
mov eax, dword [esp + 0x194]
test eax, eax
je 0x100440ff
mov ecx, dword [esp + 0x98]
mov dword [eax], ecx
mov ecx, dword [esp + 0xec]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x154]
test eax, eax
je 0x1004411a
mov ecx, dword [esp + 0xc8]
mov dword [eax], ecx
mov ecx, dword [esp + 0x74]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x158]
test eax, eax
je 0x10044138
mov ecx, dword [esp + 0xf4]
mov dword [eax], ecx
mov ecx, dword [esp + 0xf8]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x15c]
test eax, eax
je 0x10044153
mov ecx, dword [esp + 0xf0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x64]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x160]
test eax, eax
je 0x10044171
mov ecx, dword [esp + 0x114]
mov dword [eax], ecx
mov ecx, dword [esp + 0x11c]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x18c]
test eax, eax
je 0x1004418c
mov ecx, dword [esp + 0xc0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x6c]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x164]
test eax, eax
je 0x100441a7
mov ecx, dword [esp + 0xbc]
mov dword [eax], ecx
mov ecx, dword [esp + 0x68]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x168]
test eax, eax
je 0x100441c5
mov ecx, dword [esp + 0xcc]
mov dword [eax], ecx
mov ecx, dword [esp + 0xd0]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x16c]
test eax, eax
je 0x100441e3
mov ecx, dword [esp + 0xa0]
mov dword [eax], ecx
mov ecx, dword [esp + 0x10c]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x170]
test eax, eax
je 0x10044201
mov ecx, dword [esp + 0x118]
mov dword [eax], ecx
mov ecx, dword [esp + 0xe0]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x174]
test eax, eax
je 0x1004421c
mov ecx, dword [esp + 0xa4]
mov dword [eax], ecx
mov ecx, dword [esp + 0x60]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x178]
mov edx, dword [esp + 0x5c]
test eax, eax
je 0x1004423b
mov ecx, dword [esp + 0x1c]
mov dword [eax], ecx
mov ecx, dword [esp + 0xa8]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x14c]
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0xb4]
test eax, eax
je 0x10044256
mov dword [eax], edx
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x150]
xor eax, eax
mov edx, dword [esp + 0x8c]
test ecx, ecx
je 0x1004426f
mov dword [ecx], edx
mov dword [ecx + 4], ebp
test eax, eax
je 0x1004428f
add eax, 8
test eax, eax
je 0x1004428f
mov edx, dword [esp + 0xfc]
mov ebp, dword [eax + 4]
xor edx, dword [eax]
xor ebp, dword [esp + 0x100]
jmp 0x1004429d
mov edx, dword [esp + 0xfc]
mov ebp, dword [esp + 0x100]
mov ecx, dword [esp + 0x17c]
test ecx, ecx
je 0x100442ad
mov dword [ecx], edx
mov dword [ecx + 4], ebp
test eax, eax
je 0x100442cd
add eax, 8
test eax, eax
je 0x100442cd
mov edx, dword [esp + 0xe4]
mov ebp, dword [eax + 4]
xor edx, dword [eax]
xor ebp, dword [esp + 0x94]
jmp 0x100442db
mov edx, dword [esp + 0xe4]
mov ebp, dword [esp + 0x94]
mov ecx, dword [esp + 0x180]
test ecx, ecx
je 0x100442eb
mov dword [ecx], edx
mov dword [ecx + 4], ebp
test eax, eax
je 0x10044308
add eax, 8
test eax, eax
je 0x10044308
mov edx, dword [esp + 0x34]
mov ebp, dword [eax + 4]
xor edx, dword [eax]
xor ebp, dword [esp + 0x84]
jmp 0x10044313
mov edx, dword [esp + 0x34]
mov ebp, dword [esp + 0x84]
mov ecx, dword [esp + 0x184]
test ecx, ecx
je 0x10044323
mov dword [ecx], edx
mov dword [ecx + 4], ebp
test eax, eax
je 0x10044340
add eax, 8
test eax, eax
je 0x10044340
mov edx, dword [esp + 0x38]
mov ebp, dword [eax + 4]
xor edx, dword [eax]
xor ebp, dword [esp + 0xb8]
jmp 0x1004434b
mov edx, dword [esp + 0x38]
mov ebp, dword [esp + 0xb8]
mov ecx, dword [esp + 0x188]
test ecx, ecx
je 0x1004435b
mov dword [ecx], edx
mov dword [ecx + 4], ebp
test eax, eax
je 0x10044378
add eax, 8
test eax, eax
je 0x10044378
mov ebp, dword [esp + 0xc4]
mov ecx, dword [eax + 4]
xor ebp, dword [eax]
xor ecx, dword [esp + 0x50]
jmp 0x10044383
mov ebp, dword [esp + 0xc4]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x14]
test edx, edx
je 0x10044390
mov dword [edx], ebp
mov dword [edx + 4], ecx
test eax, eax
je 0x100443aa
add eax, 8
test eax, eax
je 0x100443aa
mov ebp, dword [esp + 0x70]
mov ecx, dword [eax + 4]
xor ebp, dword [eax]
xor ecx, dword [esp + 0x78]
jmp 0x100443b2
mov ebp, dword [esp + 0x70]
mov ecx, dword [esp + 0x78]
lea esi, [edx + 8]
test esi, esi
je 0x100443be
mov dword [esi], ebp
mov dword [esi + 4], ecx
test eax, eax
je 0x100443db
add eax, 8
test eax, eax
je 0x100443db
mov ebp, dword [esp + 0xe8]
mov ecx, dword [eax + 4]
xor ebp, dword [eax]
xor ecx, dword [esp + 0x3c]
jmp 0x100443e6
mov ebp, dword [esp + 0xe8]
mov ecx, dword [esp + 0x3c]
lea edx, [esi + 8]
test edx, edx
je 0x100443f2
mov dword [edx], ebp
mov dword [edx + 4], ecx
test eax, eax
je 0x1004440c
add eax, 8
test eax, eax
je 0x1004440c
mov ebp, dword [esp + 0x20]
mov ecx, dword [eax + 4]
xor ebp, dword [eax]
xor ecx, dword [esp + 0x54]
jmp 0x10044414
mov ebp, dword [esp + 0x20]
mov ecx, dword [esp + 0x54]
lea esi, [edx + 8]
test esi, esi
je 0x10044420
mov dword [esi], ebp
mov dword [esi + 4], ecx
test eax, eax
je 0x1004443a
add eax, 8
test eax, eax
je 0x1004443a
mov ebp, dword [esp + 0x24]
mov ecx, dword [eax + 4]
xor ebp, dword [eax]
xor ecx, dword [esp + 0x28]
jmp 0x10044442
mov ebp, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
lea edx, [esi + 8]
test edx, edx
je 0x1004444e
mov dword [edx], ebp
mov dword [edx + 4], ecx
test eax, eax
je 0x10044464
add eax, 8
test eax, eax
je 0x10044464
mov ebp, dword [eax + 4]
xor edi, dword [eax]
xor ebp, dword [esp + 0x10]
jmp 0x10044468
mov ebp, dword [esp + 0x10]
lea ecx, [edx + 8]
test ecx, ecx
je 0x10044474
mov dword [ecx], edi
mov dword [ecx + 4], ebp
test eax, eax
je 0x1004448a
add eax, 8
test eax, eax
je 0x1004448a
mov edx, dword [eax + 4]
xor ebx, dword [eax]
xor edx, dword [esp + 0x58]
jmp 0x1004448e
mov edx, dword [esp + 0x58]
lea eax, [ecx + 8]
test eax, eax
je 0x1004449a
mov dword [eax], ebx
mov dword [eax + 4], edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x180
ret