Function at 0x10030d00
Capabilities:
Resolve function by parsing pe exports
Write file on windows

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0xa0
mov eax, dword [0x10063040]
xor eax, esp
mov dword [esp + 0x9c], eax
cmp dword [ecx + 0x10], 0
sete byte [esp + 0xb]
mov dword [esp + 0x70], ecx
lea eax, [ecx + 0x14]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x74], edx
lea eax, [edx + 4]
mov dword [esp + 0x68], eax
mov ecx, 0x8749066b
mov eax, 0xc6cf46f6
jmp 0x10030d80
mov eax, dword [esp + 0x74]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x34]
cmp eax, dword [ecx]
mov eax, 0xc918ec88
mov ecx, 0xd7207531
cmove eax, ecx
mov ecx, 0xe9a49320
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp ecx, 0x34e5d53
jle 0x10030df0
cmp ecx, 0x388b2383
jle 0x10030e80
cmp ecx, 0x4d190654
jg 0x10031139
cmp ecx, 0x3eed7b56
jg 0x1003126f
cmp ecx, 0x388b2384
je 0x100315d8
cmp ecx, 0x3d5b07ba
je 0x1003161c
cmp ecx, 0x3e96326a
jne 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xe8c4e7c3
mov ecx, 0xdf002589
mov edx, 0xd037eeeb
cmove ecx, edx
jmp 0x10030d80
cmp ecx, 0xd037eeea
jle 0x10030ee0
cmp ecx, 0xdf002588
jg 0x10031184
cmp ecx, 0xd7373212
jg 0x100313ed
cmp ecx, 0xd037eeeb
je 0x10030d43
cmp ecx, 0xd3df9f9a
je 0x10031637
cmp ecx, 0xd6e35dde
jne 0x10030d80
lea ecx, [esp + 0x84]
mov dword [esp + 0x18], ecx
lea eax, [esp + 0x94]
mov dword [esp + 0x7c], eax
lea eax, [esp + 0x98]
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], ecx
mov ecx, 0xe9a49320
mov dword [esp + 0x28], 0
mov eax, 0x3966f27d
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x2c], edx
jmp 0x10030d80
cmp ecx, 0x1ef9af73
jle 0x100311be
cmp ecx, 0x241e989b
jle 0x1003142c
cmp ecx, 0x2e49024f
jle 0x100315b2
cmp ecx, 0x2e490250
je 0x10031652
cmp ecx, 0x373b40f8
jne 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x3966f27d
mov ecx, 0x3eed7b57
mov edx, 0x956e7c2c
cmovl ecx, edx
jmp 0x10030d80
cmp ecx, 0xa67884f1
jle 0x10031224
cmp ecx, 0xb15095ef
jg 0x1003146b
cmp ecx, 0xa67884f2
je 0x1003166d
cmp ecx, 0xab11cf6a
je 0x10031688
cmp ecx, 0xae0a3df7
jne 0x10030d80
mov eax, dword [esp + 0x58]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
mov ebx, dword [esp + 0x1c]
lea esi, [ebx + ebx]
mov eax, esi
sub eax, ebx
lea ecx, [eax - 0x2232dabf]
not ecx
lea edx, [ecx + eax*2]
add edx, 0xbb9a4a82
mov dword [esp + 0xc], edx
lea edi, [ecx + eax*2]
add edi, 0xddcd2541
mov eax, ebx
and eax, 0xfffffffe
mov ebp, ebx
not ebp
mov ecx, ebp
or ecx, 1
add ecx, eax
xor esi, 2
mov eax, ebx
or eax, 1
mov dword [esp + 4], ebp
mov dword [esp + 0x14], ebp
or ebp, 0xfffffffe
add ebp, eax
mov edx, eax
not edx
add edx, esi
mov eax, ebx
and eax, 1
not ecx
or ecx, eax
add edx, eax
add edx, 1
or edx, ecx
or edi, 0xc71bc194
mov esi, dword [esp + 0xc]
add edi, esi
mov ecx, 0x1dcd2540
sub ecx, esi
or ecx, 0xc71bc194
lea esi, [edi + ecx]
add ecx, edi
add ecx, 0x2232dac0
mov edi, 0x5dcd253f
sub edi, esi
and edi, edx
lea esi, [esi + edi*2]
add esi, 0x2232dac0
and ecx, edx
not edx
add edx, esi
lea esi, [edx + ecx*2]
lea ecx, [edx + ecx*2]
add ecx, 1
mov edi, 0xfffffffe
sub edi, esi
and edi, 0xc71bc194
sub edi, esi
and ecx, 0xc71bc194
lea edx, [edi + ecx]
mov dword [esp + 0xc], edx
add edi, ecx
add edi, 0xffffffff
add eax, eax
mov esi, ebx
sub esi, eax
mov ecx, ebx
xor ecx, 0xfffffffe
add ecx, esi
mov eax, dword [esp + 4]
and eax, 0x68341a83
mov dword [esp + 4], eax
mov esi, dword [esp + 0x14]
and esi, 0x97cbe57c
sub ecx, ebp
mov edx, ebx
and ecx, ebx
or ebx, 0x68341a83
add ebx, esi
mov esi, ebx
not esi
add esi, eax
and edx, 0x97cbe57c
mov ebp, esi
or ebp, edx
mov eax, edx
sub eax, esi
add ebp, eax
sub ebx, dword [esp + 4]
or ebx, edx
not edx
or edx, esi
add edx, ebp
sub edx, ebx
lea eax, [edx + edx]
xor eax, 0xd0683505
xor edx, 0x97cbe57d
lea esi, [edx + eax]
add eax, edx
add eax, 1
mov edx, edi
and edx, eax
mov ebx, eax
not ebx
and ebx, edi
sub ebx, edx
mov edx, dword [esp + 0xc]
add edx, ebx
add edx, 0xffffffff
lea edx, [edx + esi*2]
add edx, 2
xor edi, eax
sub edi, edx
mov eax, edi
xor eax, 0xfffffffc
add eax, edi
xor edi, 3
add eax, edi
add eax, 4
mov edx, ecx
not edx
lea edx, [ecx + edx*2]
add edx, 1
and edx, 0xaee2508e
mov esi, ecx
and esi, 0x511daf71
or edx, esi
lea edi, [edx + edx]
xor edi, 0x5dc4a11d
or ecx, 0xaee2508e
sub edi, ecx
lea ecx, [edx + edi]
add edx, edi
add edx, 1
mov edi, esi
not edi
add ecx, edi
add ecx, 1
sub esi, edx
and esi, eax
not eax
and eax, ecx
sub esi, eax
imul eax, esi, 0xaea3b473
lea ecx, [eax + 0xea3b473]
or ecx, 0xf0b87e5c
add ecx, eax
mov edx, 0x15c4b8c
sub edx, eax
or edx, 0xf0b87e5c
add edx, ecx
imul eax, edx, 0x9b4c10bb
lea ecx, [eax - 0x638cb2a2]
mov edx, ecx
xor edx, 0x972149d6
add edx, eax
xor ecx, 0x68deb629
lea ebx, [ecx + edx]
add ebx, 0x5520389
cmp ebx, 0x1000
mov eax, 0xde8a510f
mov ecx, 0x23b30d4d
cmovae eax, ecx
mov ecx, 0xe9a49320
mov ebp, dword [esp + 0x20]
jmp 0x10030d80
cmp ecx, 0x55f095b5
jg 0x10031499
cmp ecx, 0x4d190655
je 0x100316a3
cmp ecx, 0x4f1d09e5
je 0x100316be
cmp ecx, 0x51d18fc1
jne 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xd7207531
mov ecx, 0xdf002589
mov edx, 0x16aa4275
cmove ecx, edx
jmp 0x10030d80
cmp ecx, 0xeec8efd1
jg 0x100314eb
cmp ecx, 0xdf002589
je 0x100316d9
cmp ecx, 0xe9690989
je 0x100316e3
cmp ecx, 0xe9a49320
jne 0x10030d80
mov ecx, 0x8749066b
jmp 0x10030d80
cmp ecx, 0x130389c4
jg 0x1003155c
cmp ecx, 0x34e5d54
je 0x100316fe
cmp ecx, 0x895912c
je 0x10031719
cmp ecx, 0x11f0909c
jne 0x10030d80
mov eax, dword [esp + 0x18]
mov eax, dword [esp + 0x5c]
add eax, 0x18
mov dword [esp + 0x2c], eax
cmp eax, dword [esp + 0x50]
mov eax, 0x3966f27d
mov ecx, 0x5f1da53b
cmove eax, ecx
mov ecx, dword [esp + 0x60]
mov ecx, 0xe9a49320
mov edx, dword [esp + 0x60]
mov dword [esp + 0x28], edx
jmp 0x10030d80
cmp ecx, 0x89eb017b
jle 0x1003158d
cmp ecx, 0x89eb017c
je 0x10031734
cmp ecx, 0x956e7c2c
je 0x1003174f
cmp ecx, 0xa09e9013
jne 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xbe6d3070
mov ecx, 0x3d5b07ba
mov edx, 0x5618b6e5
cmovl ecx, edx
jmp 0x10030d80
cmp ecx, 0x3eed7b57
je 0x1003176a
cmp ecx, 0x3f028e50
je 0x10031785
cmp ecx, 0x4b61a2ab
jne 0x10030d80
mov eax, dword [esp + 0x20]
mov eax, dword [eax - 4]
mov dword [esp + 0x64], eax
imul eax, dword [esp + 0x20], 0xc8bc2d35
lea ecx, [eax - 0x4e0e523a]
mov edx, ecx
xor edx, 0xd720dd8d
add edx, eax
mov eax, ecx
not eax
or ecx, 0x28df2272
add ecx, edx
or eax, 0xd720dd8d
add ecx, eax
add ecx, 0xdad0d03a
imul eax, ecx, 0x1dac7d1d
imul ecx, ecx, 0x3b58fa3a
mov edx, eax
or edx, 0x5d187082
sub ecx, edx
and eax, 0x5d187082
mov edx, eax
not edx
add edx, ecx
add edx, 0xba30e105
add ecx, 0xba30e105
lea esi, [edx + edx]
mov edi, edx
or edi, 0x30d11a4
sub esi, edi
xor edx, 0x30d11a4
add edx, esi
sub eax, ecx
or eax, 0x30d11a4
lea ecx, [edx + eax]
add edx, eax
add edx, 0x30d11a5
lea eax, [ecx + ecx]
add eax, 0x61a234a
mov ecx, edx
or ecx, 0x5d187082
or edx, 0xa2e78f7d
add edx, ecx
sub eax, edx
mov edx, dword [esp + 0x64]
mov esi, edx
neg esi
lea ecx, [eax + 0x1ed9dabc]
mov edi, 0xe1262543
sub edi, eax
and edi, esi
add edi, eax
add edi, 0x1ed9dabc
sub edi, edx
or ecx, esi
not ecx
add ecx, edi
add ecx, eax
imul eax, ecx, 0xac37c529
lea edx, [eax - 0x3b6c0ed2]
add eax, eax
add eax, 0x8927e25c
sub edx, eax
add edx, 0x23318015
imul eax, edx, 0x6c8f58e7
mov ecx, eax
not ecx
imul edx, edx, 0xd91eb1ce
xor edx, 0xa9434696
add edx, eax
mov esi, eax
or esi, 0x2b5e5cb4
add esi, edx
xor eax, 0x2b5e5cb4
add eax, esi
or ecx, 0xd4a1a34b
lea edx, [eax + ecx]
add eax, ecx
add eax, 0xa734d85c
mov ecx, eax
or ecx, 0x2b5e5cb4
or eax, 0xd4a1a34b
add eax, ecx
not eax
lea eax, [eax + edx*2]
add eax, 0x79c80d6c
cmp eax, 0x20
mov eax, 0x4688c805
mov ecx, 0x9225b395
cmovb eax, ecx
mov ecx, 0xe9a49320
jmp 0x10030d80
cmp ecx, 0xd7373213
je 0x100317a0
cmp ecx, 0xd95b492d
je 0x10031803
cmp ecx, 0xddc4cc88
jne 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x66570ee9
mov ecx, 0xdf002589
mov edx, 0x11f0909c
cmove ecx, edx
jmp 0x10030d80
cmp ecx, 0x1ef9af74
je 0x10031820
cmp ecx, 0x22a22846
je 0x1003183c
cmp ecx, 0x2396933e
jne 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xbe6d3070
mov ecx, 0xdf002589
mov edx, 0xae0a3df7
cmove ecx, edx
jmp 0x10030d80
cmp ecx, 0xb15095f0
je 0x10031857
cmp ecx, 0xb551692d
je 0x10031872
cmp ecx, 0xcb06e05d
jne 0x10030d80
mov ecx, 0xe9a49320
jmp 0x10030d80
cmp ecx, 0x55f095b6
je 0x1003188d
cmp ecx, 0x5618b6e5
je 0x100318a8
cmp ecx, 0x6b8add31
jne 0x10030d80
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x38], ecx
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
cmp dword [eax], 0x10
mov dword [esp + 0x40], ecx
mov eax, dword [esp + 0x40]
jae 0x1003192f
mov eax, dword [esp + 0x38]
jmp 0x10031931
cmp ecx, 0xeec8efd2
je 0x100318c3
cmp ecx, 0xf4256de7
je 0x100318de
cmp ecx, 0xf8df7fdb
jne 0x10030d80
mov eax, dword [esp + 0x24]
mov dword [esp + 0x44], eax
lea eax, [esp + 0x80]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x80], 0
mov eax, dword [esp + 0x30]
mov eax, dword [eax]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x4c]
cmp eax, dword [esp + 0x50]
mov eax, 0xdde0582
mov ecx, 0x5f1da53b
jmp 0x10030d69
cmp ecx, 0x130389c5
je 0x100318f9
cmp ecx, 0x157d9f62
jne 0x10031ba7
push ebx
push ebp
call fcn.1005057d
add esp, 8
mov ecx, 0xe9a49320
mov eax, 0x66570ee9
jmp 0x10030d80
cmp ecx, 0x81f19e30
je 0x10031914
cmp ecx, 0x8749066b
jne 0x10030d80
mov dword [esp], eax
mov ecx, 0xe9690989
jmp 0x10030d80
cmp ecx, 0x241e989c
jne 0x10031bb5
mov eax, dword [esp + 0x3c]
cmp dword [eax], 0x10
mov eax, dword [esp + 0x40]
jae 0x1003196f
mov eax, dword [esp + 0x38]
jmp 0x10031971
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x5c]
lea ecx, [esp + 0x84]
call fcn.1004b6d0
mov eax, dword [esp + 0x7c]
mov eax, dword [eax]
mov ecx, dword [esp + 0x54]
cmp dword [ecx], 0x10
mov ecx, dword [esp + 0x58]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x14], ebp
jae 0x100319aa
mov ecx, dword [esp + 0x18]
jmp 0x100319ac
mov ecx, dword [esp]
cmp ecx, 0xc6cf46f6
mov ecx, 0xd3df9f9a
mov edx, 0x2396933e
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xc6cf46f6
mov ecx, 0xdf002589
mov edx, 0x1ef9af74
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x66570ee9
mov ecx, 0xddc4cc88
mov edx, 0x3f028e50
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xde8a510f
mov ecx, 0x22a22846
mov edx, 0x81f19e30
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x23b30d4d
mov ecx, 0x373b40f8
mov edx, 0x4f1d09e5
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x4688c805
mov ecx, 0xdf002589
mov edx, 0x25d4664b
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xdde0582
mov ecx, 0x895912c
mov edx, 0x55f095b6
cmovl ecx, edx
jmp 0x10030d80
mov ecx, 0xcb06e05d
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xed14ca52
mov ecx, 0x34e5d54
mov edx, 0xb15095f0
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x4688c805
mov ecx, 0xeec8efd2
mov edx, 0xab11cf6a
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xdde0582
mov ecx, 0xdf002589
mov edx, 0xd6e35dde
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xde8a510f
mov ecx, 0xdf002589
mov edx, 0x157d9f62
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x23b30d4d
mov ecx, 0xdf002589
mov edx, 0x4b61a2ab
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x3966f27d
mov ecx, 0xdf002589
mov edx, 0x388b2384
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x5f1da53b
mov ecx, 0xdf002589
mov edx, 0xd95b492d
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp + 0x1c]
mov eax, 0x2e0b0228
add ecx, eax
mov eax, ecx
and eax, 0xd1f4fdd7
mov edx, ecx
or edx, 0x2e0b0228
add edx, eax
xor ecx, 0xd1f4fdd7
add ecx, edx
mov eax, 0xddee983b
sub eax, ecx
lea ecx, [eax + eax]
mov edx, eax
or edx, 0x501c69c8
sub ecx, edx
add ecx, 0xa038d391
and eax, 0x501c69c8
lea edx, [eax + 1]
sub edx, ecx
sub ecx, eax
lea ebx, [ecx + edx*2]
add ebx, 0xffffffff
mov ebp, dword [esp + 0x64]
mov ecx, 0xe9a49320
mov eax, 0xde8a510f
jmp 0x10030d80
push dword [esp + 0x44]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [esp + 0x48]
mov ecx, 0xe9a49320
mov eax, 0xd7207531
jmp 0x10030d80
cmp byte [esp + 0xb], 0
mov eax, 0xe8c4e7c3
mov ecx, 0xd7207531
cmovne eax, ecx
mov ecx, 0xe9a49320
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xe8c4e7c3
mov ecx, 0x3e96326a
mov edx, 0x89eb017c
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xc918ec88
mov ecx, 0xa67884f2
mov edx, 0xa09e9013
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x5cda0ee4
mov ecx, 0xdf002589
mov edx, 0xf8df7fdb
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xed14ca52
mov ecx, 0xdf002589
mov edx, 0x241e989c
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x9225b395
mov ecx, 0xdf002589
mov edx, 0xd7373213
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x5f1da53b
mov ecx, 0x2e490250
mov edx, 0xf4256de7
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0x5cda0ee4
mov ecx, 0xb551692d
mov edx, 0x4d190655
cmovl ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xc918ec88
mov ecx, 0xdf002589
mov edx, 0x6b8add31
cmove ecx, edx
jmp 0x10030d80
mov ecx, dword [esp]
cmp ecx, 0xd7207531
mov ecx, 0x51d18fc1
mov edx, 0x130389c5
cmovl ecx, edx
jmp 0x10030d80
mov eax, dword [eax]
sub esp, 0x1c
movaps xmm0, xmmword [0x1005f960]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [esp + 0x24], eax
cmp eax, 0xffffffff
mov eax, 0x5cda0ee4
mov ecx, 0xed14ca52
jmp 0x10030d69
mov eax, dword [eax]
sub esp, 0x1c
movaps xmm0, xmmword [0x1005f950]
movups xmmword [esp + 4], xmm0
mov dword [esp], eax
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0x80
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [esp + 0x24], eax
cmp eax, 0xffffffff
mov eax, 0x5cda0ee4
jmp 0x10030d64
mov ecx, dword [ecx]
push 0
lea edx, [esp + 0x84]
push edx
push eax
push ecx
push dword [esp + 0x54]
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov eax, dword [esp + 0x80]
lea ecx, [eax + eax]
mov edx, ecx
and edx, 0xa5bde236
or ecx, 0xa5bde237
lea esi, [edx + ecx]
add ecx, edx
add ecx, 0xffffffff
mov edx, esi
neg edx
and edx, 0x5a421dca
add edx, esi
add edx, 0xffffffff
and ecx, 0x5a421dca
lea esi, [edx + ecx]
lea ebx, [esi + esi]
add ebx, 2
add ecx, edx
add ecx, 1
sub ebx, ecx
mov ebp, dword [esp + 0x28]
mov edx, ebp
not edx
lea esi, [edx + ebp*2]
add esi, ebx
mov ecx, eax
mov ebx, eax
and ebx, ebp
lea eax, [eax + ebx*2]
mov dword [esp + 0x10], eax
mov edi, ecx
mov eax, ecx
mov dword [esp + 0x78], ecx
not ecx
mov dword [esp + 4], ecx
mov edi, ebp
or edi, ecx
add edi, dword [esp + 0x10]
not ebx
lea ecx, [edi + ebx*2]
mov dword [esp + 0x10], ecx
lea ecx, [edi + ebx*2]
add ecx, 3
mov ebx, eax
xor ebx, ebp
mov eax, ebx
not eax
and eax, ecx
mov edi, ecx
or edi, ebx
sub edi, eax
add edi, dword [esp + 0x10]
and ebx, ecx
mov eax, esi
not eax
sub ebx, edi
lea ecx, [ebx - 4]
not ecx
lea ecx, [ecx + ebx*2]
add ecx, 0xfffffff8
and eax, 0xf693f725
lea eax, [eax + esi*2]
or esi, 0xf693f725
sub eax, esi
lea edi, [ecx + eax]
add eax, ecx
add eax, 0x96c08db
mov esi, eax
not esi
mov ecx, eax
or ecx, 0x96c08da
add ecx, edi
add ecx, 0x96c08db
xor eax, 0xf693f725
add eax, ecx
or esi, 0xf693f725
add esi, eax
and edx, 0xd1b4b8f
mov eax, ebp
or eax, 0xf2e4b470
xor ebp, 0xd1b4b8f
add eax, ebp
add eax, 1
or edx, eax
mov ecx, edx
xor ecx, 0xf2e4b470
sub ecx, edx
or edx, 0xf2e4b470
add edx, ecx
and eax, 0xf2e4b470
add eax, edx
add eax, 0xd1b4b90
mov edi, dword [esp + 0x78]
mov edx, edi
and edx, eax
mov ecx, eax
not ecx
and ecx, edi
xor edi, eax
mov ebx, dword [esp + 4]
or ebx, eax
add ebx, ecx
mov dword [esp + 4], ebx
not ebx
add ebx, edi
mov eax, edx
and eax, ebx
add eax, eax
mov ecx, edx
sub ecx, eax
mov ebp, edx
not ebp
or edx, ebx
add edx, ecx
mov eax, ebx
and eax, ebp
or ebp, ebx
add ebp, edx
add eax, dword [esp + 4]
add ebp, edi
sub eax, ebp
add eax, esi
add eax, 0xf693f728
imul ecx, eax, 0x6073e7c9
mov edx, ecx
not edx
imul eax, eax, 0xc0e7cf92
and edx, 0xcedb977e
add edx, eax
or ecx, 0xcedb977e
sub edx, ecx
add edx, 0xcedb977f
imul eax, edx, 0x22271d87
imul ecx, edx, 0xbbb1c4f2
mov edx, eax
or edx, 0xe84f46f8
add edx, ecx
or eax, 0x17b0b907
add eax, edx
add eax, 0xe84f46fa
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x54]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
cmp eax, 0x10
mov eax, 0x66570ee9
mov ecx, 0xbe6d3070
cmovae eax, ecx
mov ecx, 0xe9a49320
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x14]
jmp 0x10030d80
cmp ecx, 0x16aa4275
jne 0x10030d80
jmp 0x10031bc6
cmp ecx, 0x25d4664b
jne 0x10030d80
call fcn.1005253d
mov ecx, dword [esp + 0x9c]
xor ecx, esp
call fcn.10050a8a
add esp, 0xa0
pop esi
pop edi
pop ebx
pop ebp
ret