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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov ecx, dword [ebp + 8]
mov dword [esp + 4], 0x55209612
mov dword [esp + 0x24], 0x9d5c7ec7
mov eax, ecx
cmp ecx, 0xca3ed
je 0x401d60
mov dword [esp + 0x24], 0x4de30b13
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
mov dword [esp + 0x60], ecx
lea ecx, [eax + 0xb]
mov dword [esp + 0x5c], ecx
lea ecx, [eax - 0xd]
mov dword [esp + 0x58], ecx
mov ecx, eax
sar ecx, 8
mov dword [esp + 0x54], ecx
lea ecx, [eax + eax]
mov dword [esp + 0x50], ecx
shl eax, 8
mov dword [esp + 0x64], eax
mov edi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov eax, dword [esp + 4]
cmp eax, 0xbc4f8b5
jle 0x401e0c
cmp eax, 0x5851b321
jg 0x401e72
cmp eax, 0x2d845915
jle 0x401f8c
cmp eax, 0x44b95ebc
jg 0x4020d9
cmp eax, 0x32668995
jle 0x402352
cmp eax, 0x32668996
je 0x40275a
cmp eax, 0x3d25f776
je 0x402777
cmp eax, 0x3da592c4
jne 0x401d9a
mov eax, dword [esp + 0xc]
mov ecx, 0xfffffc00
and eax, ecx
or eax, 0x15b
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x4c620c4
jmp 0x401d9a
cmp eax, 0xc0ccab27
jle 0x401eda
cmp eax, 0xea157d85
jg 0x401f50
cmp eax, 0xe5557266
jg 0x40211a
cmp eax, 0xd8ce5b26
jle 0x40238d
cmp eax, 0xd8ce5b27
je 0x402790
cmp eax, 0xe27d1edb
je 0x40279d
cmp eax, 0xe52542ba
jne 0x401d9a
push dword [esp + 0x7c]
call fcn.00401d2c
add esp, 4
mov dword [esp + 4], 0xc2c24862
jmp 0x401d9a
cmp eax, 0x6ca62760
jle 0x401ffc
cmp eax, 0x761bf493
jg 0x402181
cmp eax, 0x71be5c70
jle 0x4023c9
cmp eax, 0x71be5c71
je 0x4027cb
cmp eax, 0x758b8766
je 0x4027e7
cmp eax, 0x75c5e389
jne 0x401d9a
push 0
push 7
push dword [esp + 0x1c]
push dword [esp + 0x1c]
call fcn.00443770
mov dword [esp + 0x3c], edx
mov dword [esp + 0x38], eax
mov dword [esp + 4], 0x8d9c2013
jmp 0x401d9a
cmp eax, 0x95d7dc66
jle 0x402068
cmp eax, 0xae119813
jle 0x4021dc
cmp eax, 0xb7c64cba
jle 0x402413
cmp eax, 0xb7c64cbb
je 0x402822
cmp eax, 0xbd948fd4
je 0x402858
cmp eax, 0xc029a086
jne 0x401d9a
mov eax, dword [esp + 0xc]
lea ecx, [eax + 0x55]
imul ecx, ecx
imul edx, ecx, 0x2dcd
dec edx
shl eax, 5
add eax, 0xffffeda0
mov dword [esp + 0xc], eax
mov eax, 0x890fe017
cmp ecx, edx
je 0x402db4
mov eax, 0x6ca62761
jmp 0x402db4
cmp eax, 0x4c620c3
jg 0x40222a
cmp eax, 0xf69bd7bf
jle 0x402458
cmp eax, 0xf69bd7c0
je 0x40287c
cmp eax, 0xf7a83fe5
je 0x4028b3
cmp eax, 0xfcf1e5ea
je 0x40267e
jmp 0x401d9a
cmp eax, 0x1b16e1b3
jle 0x402276
cmp eax, 0x21806df2
jle 0x402496
cmp eax, 0x21806df3
je 0x4028e0
cmp eax, 0x2773283d
je 0x402905
cmp eax, 0x28ae781a
jne 0x401d9a
mov eax, dword [esp + 8]
shr eax, 0x14
imul esi, eax, 0x1c2
add esi, 0xfffffa96
mov dword [esp + 8], esi
call fcn.00402df9
call fcn.0040376a
mov eax, 0x32668996
cmp esi, 0x4c
jb 0x402db4
mov eax, 0x6004a627
jmp 0x402db4
cmp eax, 0x60d63b9a
jle 0x4022bc
cmp eax, 0x653a7834
jle 0x4024c5
cmp eax, 0x653a7835
je 0x402917
cmp eax, 0x669806ef
je 0x40292c
cmp eax, 0x683e07e5
jne 0x401d9a
mov eax, dword [esp + 0xc]
shr eax, 4
add eax, 0xffffff9d
imul ecx, eax, 0x10ba86
imul eax, eax
imul edx, eax, 0x30ab
dec edx
mov dword [esp + 0xc], ecx
mov ecx, 0xe9b02578
cmp edx, eax
je 0x402aad
mov ecx, 0xfcf1e5ea
jmp 0x402aad
cmp eax, 0x8ab01033
jle 0x4022fa
cmp eax, 0x8d9c2012
jle 0x4024fe
cmp eax, 0x8d9c2013
je 0x402965
cmp eax, 0x8f9479dd
je 0x40299a
cmp eax, 0x90474081
jne 0x401d9a
mov eax, dword [esp + 0xc]
mov ecx, 0xffffff6e
add eax, ecx
mov ecx, eax
imul ecx, eax
shr eax, 0x11
imul edx, ecx, 0x70cd
dec edx
add eax, 0xffffff4e
mov dword [esp + 0xc], eax
mov eax, 0xf69bd7c0
cmp ecx, edx
je 0x402db4
mov eax, 0x64d557af
jmp 0x402db4
cmp eax, 0x4de30b12
jle 0x402559
cmp eax, 0x4de30b13
je 0x4029b3
cmp eax, 0x50fb5f56
je 0x4029ef
cmp eax, 0x55209612
jne 0x401d9a
mov eax, dword [esp + 0x64]
mov dword [esp + 0x6c], eax
mov dword [esp + 4], 0xae119814
jmp 0x401d9a
cmp eax, 0xe8c2aa52
jle 0x4025ae
cmp eax, 0xe8c2aa53
je 0x402a08
cmp eax, 0xe8cfce0f
je 0x402a2a
cmp eax, 0xe9b02578
jne 0x401d9a
mov esi, dword [esp + 8]
shl esi, 0xd
add esi, 0xffe02000
mov eax, esi
shr eax, 2
mov dword [esp + 8], eax
push eax
call fcn.00401d2c
add esp, 4
call fcn.004043bc
mov eax, 0x890fe017
test esi, esi
je 0x402db4
mov eax, 0x8c9d6917
jmp 0x402db4
cmp eax, 0x7b31aba0
jle 0x4025e2
cmp eax, 0x7b31aba1
je 0x402a33
cmp eax, 0x7eef9495
je 0x402a5b
cmp eax, 0x7fb28c88
jne 0x401d9a
imul eax, dword [esp + 0xc], 0xe9
mov dword [esp + 0xc], eax
mov ecx, eax
imul ecx, eax
imul edx, ecx, 0x1f51
dec edx
mov eax, 0xae119814
cmp ecx, edx
je 0x402db4
mov eax, 0x3d25f776
jmp 0x402db4
cmp eax, 0xa4c93c52
jg 0x40261a
cmp eax, 0x95d7dc67
je 0x402a7b
cmp eax, 0xa0d78011
jne 0x402dbd
mov esi, dword [esp + 8]
shl esi, 0xe
add esi, 0xfffff730
mov dword [esp + 8], esi
push esi
call fcn.00401d2c
add esp, 4
mov eax, 0x32668996
cmp esi, 0x6d
jge 0x40295b
jmp 0x402db4
cmp eax, 0x73c0dc5
jle 0x40264d
cmp eax, 0x73c0dc6
je 0x402ab6
cmp eax, 0x9d3536b
jne 0x402dc9
mov esi, dword [esp + 8]
shr esi, 0x10
mov dword [esp + 8], esi
call fcn.00402df9
call fcn.0040318b
mov eax, 0xe27d1edb
cmp esi, 0xf0
jne 0x402ae7
jmp 0x402db4
cmp eax, 0x1599ac08
jg 0x40268b
cmp eax, 0xbc4f8b6
je 0x402af1
cmp eax, 0x12a6f897
jne 0x401d9a
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
cmp eax, 0x2111f32a
sbb ecx, 6
mov eax, 0x7b31aba1
jb 0x402db4
mov eax, 0xe8cfce0f
jmp 0x402db4
cmp eax, 0x5ea4aa2b
jg 0x4026c9
cmp eax, 0x5851b322
je 0x402b0d
cmp eax, 0x5b0b727c
jne 0x401d9a
mov eax, dword [esp + 0x38]
or eax, dword [esp + 0x3c]
mov eax, 0x7fb28c88
je 0x402db4
mov eax, 0x683e07e5
jmp 0x402db4
cmp eax, 0x86934445
jg 0x40271e
cmp eax, 0x83b09f65
je 0x402b2f
cmp eax, 0x866f0aaf
jne 0x401d9a
mov eax, dword [esp + 0xc]
add eax, 0xffffffcb
mov ecx, eax
shl ecx, 0x1e
imul eax, eax
imul edx, eax, 0xa9b
dec edx
or ecx, 0x558000
mov dword [esp + 0xc], ecx
mov ecx, 0x890fe017
cmp edx, eax
je 0x402aad
mov ecx, 0x64d557af
jmp 0x402aad
cmp eax, 0x2d845916
je 0x402b50
cmp eax, 0x3161f04f
jne 0x401d9a
mov eax, dword [esp + 0xc]
shl eax, 0x11
add eax, 0x4e0ef
shr eax, 9
add eax, 0xce
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x6ca62761
jmp 0x401d9a
cmp eax, 0xc0ccab28
je 0x402b8b
cmp eax, 0xc2c24862
jne 0x401d9a
push 0
push 0xd
push dword [esp + 0x1c]
push dword [esp + 0x1c]
call fcn.00443770
mov dword [esp + 0x44], edx
mov dword [esp + 0x40], eax
mov dword [esp + 4], 0x3da592c4
jmp 0x401d9a
cmp eax, 0x6ca62761
je 0x402bac
cmp eax, 0x6e8d93a9
jne 0x401d9a
imul esi, dword [esp + 8], 0x6d
add esi, 0x129
mov eax, esi
shr eax, 6
mov dword [esp + 8], eax
call fcn.0040318b
call fcn.004043bc
mov eax, 0x6ca62761
cmp esi, 0x1ec0
jae 0x40254f
jmp 0x402db4
cmp eax, 0xae119814
je 0x402bd2
cmp eax, 0xb19d3942
jne 0x401d9a
mov esi, dword [esp + 8]
add esi, 0x56
mov eax, esi
shr eax, 0x17
mov dword [esp + 8], eax
push eax
call fcn.00401d2c
add esp, 4
mov eax, 0x5b0b727c
cmp esi, 0x3e800000
jae 0x40254f
jmp 0x402db4
cmp eax, 0xea157d86
je 0x402bef
cmp eax, 0xf0e7aef6
jne 0x401d9a
mov eax, dword [esp + 0x60]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x80], eax
mov dword [esp + 4], 0xe8c2aa53
jmp 0x401d9a
cmp eax, 0x1b16e1b4
je 0x402c34
cmp eax, 0x1ce18812
jne 0x401d9a
push dword [esp + 0x6c]
call fcn.00401d2c
add esp, 4
mov dword [esp + 4], 0x3161f04f
jmp 0x401d9a
cmp eax, 0x60d63b9b
je 0x402c55
cmp eax, 0x64d557af
jne 0x401d9a
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
add eax, 1
adc ecx, 0
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], ecx
mov dword [esp + 4], 0x12a6f897
jmp 0x401d9a
cmp eax, 0x8ab01034
je 0x402c62
cmp eax, 0x8c9d6917
jne 0x401d9a
mov eax, dword [esp + 8]
shl eax, 9
or eax, 0x96
imul eax, eax, 0x3b
shr eax, 0x13
and eax, 0xffffffe0
lea esi, [eax + eax*4]
mov dword [esp + 8], esi
push esi
call fcn.00401d2c
add esp, 4
call fcn.0040376a
mov eax, 0x73c0dc6
cmp esi, 0xc2
jae 0x402db4
mov eax, 0x75c5e389
jmp 0x402db4
cmp eax, 0x44b95ebd
je 0x402c88
cmp eax, 0x477a334e
jne 0x401d9a
mov eax, dword [esp + 8]
shr eax, 0xb
imul esi, eax, 0x9f
add esi, 0xffff8782
mov dword [esp + 8], esi
push esi
call fcn.00401d2c
add esp, 4
push esi
call fcn.00401d2c
add esp, 4
mov eax, 0x890fe017
cmp esi, 0xd6
jae 0x402d61
jmp 0x402db4
cmp eax, 0xe5557267
je 0x402cc2
cmp eax, 0xe8315faa
jne 0x401d9a
imul eax, dword [esp + 0xc], 0x8b8
add eax, 0xfffbcc44
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0xd8ce5b27
jmp 0x401d9a
cmp eax, 0x761bf494
je 0x402cde
cmp eax, 0x7a62ddc8
jne 0x401d9a
movzx eax, word [esp + 0xa]
add eax, 0xffffffea
mov dword [esp + 8], eax
push eax
call fcn.00401d2c
add esp, 4
mov dword [esp + 4], 0xf0e7aef6
jmp 0x401d9a
cmp eax, 0xa4c93c53
je 0x402cfc
cmp eax, 0xa7e3ae00
jne 0x401d9a
mov eax, dword [esp + 0x30]
or eax, dword [esp + 0x34]
mov eax, 0x761bf494
je 0x402db4
mov eax, 0xd8ce5b27
jmp 0x402db4
cmp eax, 0x4c620c4
je 0x402d20
cmp eax, 0x632314f
jne 0x401d9a
mov eax, dword [esp + 8]
shr eax, 9
imul eax, eax, 0x231e0
add eax, 0x34ad00
and eax, 0xffffe000
mov dword [esp + 8], eax
mov dword [esp + 4], 0x6004a627
jmp 0x401d9a
cmp eax, 0x1599ac09
je 0x402d3a
cmp eax, 0x188631bf
jne 0x401d9a
imul ecx, dword [esp + 8], 0xf2000
add ecx, 0xfeebf800
mov dword [esp + 8], ecx
mov eax, 0x890fe017
cmp ecx, 0xf9
jl 0x402d61
jmp 0x402db4
cmp eax, 0x5ea4aa2c
je 0x402d68
cmp eax, 0x6004a627
jne 0x401d9a
mov ecx, dword [esp + 0x10]
mov eax, ecx
mov edx, 0x38e38e39
mul edx
imul ecx, ecx, 0x8e38e38e
add ecx, edx
imul edx, dword [esp + 0x14], 0x38e38e39
add edx, ecx
cmp eax, 0x71c71c72
sbb edx, 0x1c71c71c
mov eax, 0x8f9479dd
jb 0x402db4
mov eax, 0x2773283d
jmp 0x402db4
cmp eax, 0x86934446
je 0x402d96
cmp eax, 0x890fe017
jne 0x401d9a
push 0
push 3
push dword [esp + 0x1c]
push dword [esp + 0x1c]
call fcn.00443770
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], eax
mov dword [esp + 4], 0x1599ac09
jmp 0x401d9a
mov eax, dword [esp + 0x28]
or eax, dword [esp + 0x2c]
mov eax, 0x95d7dc67
je 0x402db4
mov eax, 0xc029a086
jmp 0x402db4
push dword [esp + 0x74]
call fcn.00401d2c
add esp, 4
mov dword [esp + 4], 0xfcf1e5ea
jmp 0x401d9a
mov dword [esp + 4], 0x75c5e389
jmp 0x401d9a
mov eax, dword [esp + 8]
mov ecx, eax
shl ecx, 7
lea ecx, [ecx + eax*8]
add ecx, 0xffffa8e0
mov dword [esp + 8], ecx
mov eax, 0xf0e7aef6
cmp ecx, 0x57
jge 0x402db4
mov eax, 0x477a334e
jmp 0x402db4
imul eax, dword [esp + 0xc], 0x3a
add eax, 0xffffffd9
shr eax, 0xd
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0xa7e3ae00
jmp 0x401d9a
imul eax, dword [esp + 0xc], 0xbf
lea ecx, [eax - 0x9eeb]
add eax, 0xffff6045
imul ecx, ecx
imul edx, ecx, 0x612f
shr eax, 7
dec edx
mov dword [esp + 0xc], eax
mov eax, 0x5b0b727c
cmp edx, ecx
je 0x402db4
mov eax, 0xbc4f8b6
jmp 0x402db4
mov ecx, dword [esp + 0x10]
mov eax, ecx
mov edx, 0xba2e8ba3
mul edx
imul ecx, ecx, 0x2e8ba2e8
add ecx, edx
imul edx, dword [esp + 0x14], 0xba2e8ba3
add edx, ecx
cmp eax, 0x5d1745d2
sbb edx, 0x1745d174
mov eax, 0xe52542ba
jae 0x4028a9
jmp 0x402db4
imul eax, dword [esp + 8], 0xee
shr eax, 0xa
and eax, 0xfffffff0
add eax, 0xbcd
mov dword [esp + 8], eax
mov dword [esp + 4], 0x5851b322
jmp 0x401d9a
mov ecx, dword [esp + 8]
mov eax, 0xffffff12
add ecx, eax
shr ecx, 1
add ecx, 0xffffff7e
mov eax, ecx
shr eax, 2
mov dword [esp + 8], eax
mov eax, 0x75c5e389
cmp ecx, 0xec
jae 0x402db4
mov eax, 0xc2c24862
jmp 0x402db4
mov esi, dword [esp + 8]
shl esi, 9
add esi, 0xe200
mov dword [esp + 8], esi
push esi
call fcn.00401d2c
add esp, 4
mov eax, 0x4c620c4
cmp esi, 0xe
jl 0x402ae7
jmp 0x402db4
mov eax, dword [esp + 8]
shl eax, 9
add eax, 0xffffffa5
mov dword [esp + 8], eax
call fcn.0040318b
call fcn.004043bc
mov dword [esp + 4], 0x2d845916
jmp 0x401d9a
imul eax, dword [esp + 0xc], 0x378
add eax, 0xfffdd775
jmp 0x402ccd
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
mov dword [esp + 4], 0x60d63b9b
jmp 0x401d9a
mov eax, dword [esp + 0xc]
shr eax, 6
add eax, 0xffffff46
shr eax, 0xe
mov ecx, eax
imul ecx, eax
shl eax, 0x1a
imul edx, ecx, 0xe4b
dec edx
mov dword [esp + 0xc], eax
mov eax, 0xae119814
cmp edx, ecx
je 0x402db4
mov eax, 0xf0e7aef6
jmp 0x402db4
imul eax, dword [esp + 0xc], 0x8a
mov ecx, eax
shr ecx, 0x19
imul ecx, ecx
imul edx, ecx, 0x4ae3
shr eax, 0x1a
dec edx
mov dword [esp + 0xc], eax
mov eax, 0xea157d86
cmp ecx, edx
je 0x402db4
mov eax, 0x5b0b727c
jmp 0x402db4
push dword [esp + 0x78]
call fcn.00401d2c
add esp, 4
mov dword [esp + 4], 0xe5557267
jmp 0x401d9a
mov eax, dword [esp + 0xc]
shr eax, 1
imul ecx, eax, 0x79
imul eax, eax
shr ecx, 6
imul edx, eax, 0x4791
dec edx
lea ecx, [ecx + ecx*4]
add ecx, ecx
add ecx, 0xfffff9ca
mov dword [esp + 0xc], ecx
mov ecx, 0xbd948fd4
cmp edx, eax
je 0x402aad
mov ecx, 0x749657a
jmp 0x402aad
push dword [esp + 0x70]
call fcn.00401d2c
add esp, 4
mov dword [esp + 4], 0xe8315faa
jmp 0x401d9a
imul eax, dword [esp + 0xc], 0x1e30
add eax, 0xffe30860
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x653a7835
xor edi, edi
xor ebx, ebx
jmp 0x401d9a
mov eax, dword [esp + 0x24]
jmp 0x402db4
mov eax, dword [esp + 0xc]
shl eax, 0x1d
add eax, 0x27fb7f50
shr eax, 0xc
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x653a7835
mov edi, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
jmp 0x401d9a
mov eax, dword [esp + 8]
shl eax, 0x12
mov dword [esp + 8], eax
mov eax, 0x8ab01034
je 0x402db4
mov eax, 0x5ea4aa2c
jmp 0x402db4
mov eax, dword [esp + 0xc]
shr eax, 0xe
imul ecx, eax, 0xa81f
imul eax, eax
imul edx, eax, 0x5013
dec edx
add ecx, 0xffffd98d
shr ecx, 5
mov dword [esp + 0xc], ecx
mov ecx, 0xae119814
cmp edx, eax
je 0x402aad
mov ecx, 0x1ce18812
mov dword [esp + 4], ecx
jmp 0x401d9a
mov eax, dword [esp + 8]
lea esi, [eax + eax]
add esi, 0x1ac
and esi, 0xffffc000
or esi, 5
mov dword [esp + 8], esi
push esi
call fcn.00403730
add esp, 4
mov eax, 0xf0e7aef6
cmp esi, 0x70
jb 0x402db4
mov eax, 0xa7e3ae00
jmp 0x402db4
push dword [esp + 0x80]
call fcn.00401d2c
add esp, 4
mov dword [esp + 4], 0x866f0aaf
jmp 0x401d9a
mov eax, dword [esp + 8]
shl eax, 7
add eax, 0xffffff6f
mov dword [esp + 8], eax
call fcn.00402df9
mov dword [esp + 4], 0xf7a83fe5
jmp 0x401d9a
mov eax, dword [esp + 8]
shr eax, 0xc
mov dword [esp + 8], eax
push eax
call fcn.00403730
add esp, 4
mov dword [esp + 4], 0x5b0b727c
jmp 0x401d9a
imul esi, dword [esp + 8], 0x3e58000
add esi, 0xffd6d7e8
mov eax, esi
shr eax, 0xf
mov dword [esp + 8], eax
push eax
call fcn.00401d2c
add esp, 4
mov eax, 0x7a62ddc8
cmp esi, 0x3c0000
jb 0x402db4
mov eax, 0xae119814
jmp 0x402db4
mov eax, dword [esp + 8]
lea eax, [eax*4 - 0x13c]
mov dword [esp + 8], eax
call fcn.004043bc
mov dword [esp + 4], 0x44b95ebd
jmp 0x401d9a
push 0
push 5
push dword [esp + 0x1c]
push dword [esp + 0x1c]
call fcn.00443770
mov dword [esp + 0x34], edx
mov dword [esp + 0x30], eax
mov dword [esp + 4], 0x71be5c71
jmp 0x401d9a
mov eax, dword [esp + 0x54]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x74], eax
mov dword [esp + 4], 0x669806ef
jmp 0x401d9a
mov dword [esp + 0x68], ebx
mov ebx, edi
mov edi, dword [esp + 8]
add edi, 0xffffffb3
mov esi, edi
shr esi, 0xd
mov dword [esp + 8], esi
call fcn.0040376a
push esi
call fcn.00401d2c
add esp, 4
mov eax, 0x1b16e1b4
cmp edi, 0xe0000
jae 0x402c25
mov eax, 0x75c5e389
mov dword [esp + 4], eax
mov edi, ebx
mov ebx, dword [esp + 0x68]
jmp 0x401d9a
xor esi, esi
mov dword [esp + 8], esi
call fcn.004043bc
push esi
call fcn.00403730
add esp, 4
mov dword [esp + 4], 0x32668996
jmp 0x401d9a
mov dword [esp + 4], 0x890fe017
jmp 0x401d9a
mov ecx, dword [esp + 8]
shl ecx, 0xa
mov eax, 0xb19d3942
add ecx, 0x800
mov dword [esp + 8], ecx
je 0x402db4
mov eax, 0x28ae781a
jmp 0x402db4
mov eax, dword [esp + 8]
add eax, 0xffffffab
shr eax, 0xe
imul esi, eax, 0xc5
mov dword [esp + 8], esi
push esi
call fcn.00403730
add esp, 4
call fcn.0040376a
mov eax, 0xa0d78011
cmp esi, 0x5b
jb 0x402db4
mov eax, 0xa4c93c53
jmp 0x402db4
imul eax, dword [esp + 0xc], 0xde
add eax, 0xffffffeb
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0xb7c64cbb
jmp 0x401d9a
imul eax, dword [esp + 0xc], 0x127c
add eax, 0xffff6c20
mov dword [esp + 0xc], eax
mov dword [esp + 4], 0x50fb5f56
jmp 0x401d9a
mov eax, dword [esp + 8]
add eax, 0xffffff9c
shr eax, 7
imul eax, eax, 0x8c
add eax, 0x1e
mov dword [esp + 8], eax
mov dword [esp + 4], 0x6ca62761
jmp 0x401d9a
mov eax, dword [esp + 0x40]
or eax, dword [esp + 0x44]
mov eax, 0x758b8766
je 0x402db4
mov eax, 0x90474081
jmp 0x402db4
imul eax, dword [esp + 0xc], 0x3b
lea ecx, [eax + 0x27f]
imul ecx, ecx
imul edx, ecx, 0x755b
add eax, 0x280
dec edx
mov dword [esp + 0xc], eax
mov eax, 0xae119814
cmp ecx, edx
je 0x402db4
mov eax, 0x32668996
jmp 0x402db4
mov esi, dword [esp + 8]
mov eax, 0xfffffedf
add esi, eax
mov dword [esp + 8], esi
push esi
call fcn.00403730
add esp, 4
call fcn.004043bc
mov eax, 0x83b09f65
cmp esi, 0x53
jge 0x402db4
mov eax, 0x6e8d93a9
jmp 0x402db4
imul ecx, dword [esp + 8], 0x3b
add ecx, 0x4b86
mov dword [esp + 8], ecx
mov eax, 0x12a6f897
cmp ecx, 0x41
je 0x402db4
mov eax, 0xb7c64cbb
mov dword [esp + 4], eax
jmp 0x401d9a
cmp eax, 0x9d5c7ec7
je 0x402de4
jmp 0x401d9a
cmp eax, 0x749657a
jne 0x401d9a
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ebx
push 0
call dword [0x46f0a0]
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ebx
mov eax, 0xca3ed
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret