Function at 0x4057d0
Capabilities:
Parse pe header
Query environment variable

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
push 0xccd23f00
push 0x30e29400
call fcn.00408c8e
add esp, 8
push ebx
push 0xffffffffffffffc9
push 0xfffffffffffffff7
push 0x6429c00
call fcn.00408c8e
add esp, 0xc
push 0x3b
call fcn.00408c8e
add esp, 4
push esi
mov edx, 0x8b
cmp eax, 0x6a
je 0x405823
push 8
nop
nop
pop eax
push 0xffffffffffffff91
push 0x6c6a6b00
call fcn.0040882a
add esp, 8
push edi
call fcn.004083ca
push 0x6c70a300
call fcn.00409aa4
add esp, 4
push eax
pop edx
cmp edx, dword [ebp - 0xc]
je 0x405851
cmp edx, 0xe1cc
jne 0x405851
push edx
pop eax
test eax, 0x48
je 0x405851
mov dword [ebp - 4], eax
push 0x2c477b00
push 0xb45ab400
push 0x1b
call fcn.00408504
add esp, 0xc
call fcn.00408e42
cmp eax, 0x32
je 0x405888
push 0xc6221400
push 0x18bf5a00
push 0x909ef900
push 0xffffffffffffffb2
call fcn.0040917f
add esp, 0x10
push 0x56598500
push 0xffffffffffffffc5
push 0x38
call fcn.00408016
add esp, 0xc
mov eax, 0xb7
call fcn.0040862c
call fcn.00409aa4
push 0x662e0100
push 0x6c543600
call fcn.004083ca
add esp, 8
call fcn.0040917f
mov dword [ebp - 8], eax
cmp eax, dword [ebp - 0x24]
jne 0x4058d5
push 0xffffffffffffffee
push 0x3f
push 0x19
call fcn.004098b4
add esp, 0xc
push 0x16368200
push 0xffffffffffffff9f
push 0x38
push 0xffffffffffffffb7
call fcn.00409bc5
add esp, 0x10
push 0xb40e3400
call fcn.00408e42
add esp, 4
mov edx, dword [ebp - 8]
sbb edx, eax
cmp edx, 0xffffffa3
jne 0x405904
add edx, eax
sub dword [ebp - 8], edx
push 0x4647c900
push 0x8ce7a400
push 0xffffffffffffff9a
push 0x18
call fcn.0040937d
add esp, 0x10
push 0x53
push 0xb8844c00
push 0xffffffffffffff9d
push 0x10f26e00
call fcn.00408016
add esp, 0x10
push 0xb
push 0xffffffffffffffd4
push 0xe63de000
push 0xffffffffffffff9b
push 0x767c8600
call fcn.00408e42
add esp, 0x14
push 0xfffffffffffffffd
push 0x6c0fef00
push 0x2c454500
push 0xffffffffffffffbf
call fcn.0040937d
add esp, 0x10
push 0xffffffffffffffad
push 0xfffffffffffffffa
push 0xffffffffffffffc9
push 0x5d
call fcn.0040882a
add esp, 0x10
push 0xffffffffffffffff
push 0xfffffffffffffff0
push 0xfffffffffffffffe
call fcn.0040937d
add esp, 0xc
push 0xdcfb3300
push 0xffffffffffffff9d
push 0x1666b500
call fcn.0040862c
add esp, 0xc
push 0xffffffffffffffbd
push 0xfffffffffffffff7
push 0x36731b00
push 0xffffffffffffff80
push 0x8cabf700
call fcn.0040937d
add esp, 0x14
cmp eax, 0x33
je 0x4059b0
sub dword [ebp - 8], eax
push 0x90834100
push 0x43
push 0xffffffffffffffcc
call fcn.004098b4
add esp, 0xc
mov ebx, dword [ebp - 8]
cmp ebx, dword [ebp - 0x40]
jne 0x405a22
push 0xffffffffffffffae
push 0xac310b00
push 0xf880d100
push 0xecd22400
call fcn.00408504
add esp, 0x10
push 0x2676d400
push 0x84ea5500
push 0xa62e4900
push 0x65
call fcn.0040937d
add esp, 0x10
push 0xf4ea4600
push 0xffffffffffffffea
push 0xffffffffffffff89
push 0xffffffffffffffab
call fcn.0040917f
add esp, 0x10
mov eax, dword [ebp - 8]
and eax, ebx
cmp eax, 0xfffffff5
jne 0x405a22
push 0x75
call fcn.004095a7
add esp, 4
push 0x8a31000
push 0x24f77b00
call fcn.0040917f
add esp, 8
push 0x64
push 4
push 0x18
call fcn.004083ca
add esp, 0xc
call fcn.00409aa4
push 0xffffffffffffffda
call fcn.0040917f
add esp, 4
push 0x2c
push 0
call dword [sym.imp.kernel32.dll_LocalAlloc]
add dword [ebp - 8], eax
mov dword [ebp - 0x18], eax
add ebx, eax
sbb ebx, eax
xor dword [ebp - 8], ebx
lea eax, [ebp - 0x14]
push eax
call dword [sym.imp.kernel32.dll_QueryPerformanceCounter]
xor dword [ebp - 8], eax
mov dword [ebp - 0x3c], eax
sbb ebx, eax
cmp ebx, dword [ebp - 0xc]
jne 0x405c20
push 0xffffffffffffffda
push 0x20
push 0xa0fa9a00
push 0xffffffffffffffce
call fcn.00407e91
add esp, 0x10
push 3
push 0x4d
push 6
push 0xffffffffffffff8c
push 0x9401af00
call fcn.0040882a
add esp, 0x14
push 0xffffffffffffff80
push 0x68dd8a00
push 0x30efce00
push 0xffffffffffffffa0
push 0xffffffffffffffee
call fcn.0040862c
add esp, 0x14
push 0xffffffffffffff97
push 0x2c6f4500
call fcn.00408504
add esp, 8
cmp ebx, 0xffffff83
je 0x405c20
push 0xffffffffffffffc2
push 0x46130400
push 0x6e
push 0x167aa000
call fcn.004096f7
add esp, 0x10
add ebx, eax
push 0x31
push 0x262a0e00
push 0xffffffffffffffd5
push 0x28
push 0x56
call fcn.00408b96
add esp, 0x14
cmp eax, ebx
je 0x405c20
push 0x74
push 0xb409d100
push 0x11
push 0x76090100
call fcn.0040882a
add esp, 0x10
push eax
pop edx
push eax
pop edi
push 0x48
push 0x62
call fcn.004083ca
add esp, 8
call fcn.004095a7
add dword [ebp - 8], edi
push 0x38b70400
call fcn.004095a7
add esp, 4
push 0x5607b000
push 0x28
push 0xec24dc00
push 0x146cf300
call fcn.004083ca
add esp, 0x10
sbb ebx, eax
push 0xf4d98700
push 0x861caf00
push 0x6c1d5f00
push 0xffffffffffffffa1
push 0x37
call fcn.0040917f
add esp, 0x14
call fcn.00408504
or ebx, edi
cmp ebx, edi
je 0x405c20
and ebx, eax
sbb ebx, eax
test ebx, 0xe481
je 0x405c20
push 0xffffffffffffffed
push 0xbc93f000
push 0x1e
call fcn.00407e91
add esp, 0xc
cmp ebx, 0x60
jne 0x405c20
push 0xb4638c00
call fcn.0040862c
add esp, 4
cmp ebx, eax
jne 0x405c20
call fcn.0040917f
push 0xec4aa700
push 0x62
push 0x28809a00
push 0x3f
push 0x3e
call fcn.0040862c
add esp, 0x14
sbb ebx, eax
push 0x96527a00
push 0x13
push 0xecd87900
push 0xfffffffffffffff1
call fcn.00408504
add esp, 0x10
push 0xfffffffffffffff4
push 0xffffffffffffffa8
call fcn.00408504
add esp, 8
add ebx, eax
add ebx, edi
push 0xffffffffffffff91
push 0xffffffffffffffaf
push 0x26688500
call fcn.00408504
add esp, 0xc
xor dword [ebp - 8], ebx
push 0x86477100
push 0x4d
push 0x3a
push 0x499d400
push 6
call fcn.004098b4
add esp, 0x14
call dword [sym.imp.kernel32.dll_GetCurrentThread]
cmp eax, 0xc888
je 0x405c74
push 0x6a
pop edx
nop
nop
add dword [ebp - 8], ebx
mov esi, dword [ebp - 8]
cmp esi, dword [ebp - 0x44]
jne 0x405c74
add edx, ebx
sbb edx, edi
cmp edx, esi
je 0x405c74
or esi, ebx
sbb esi, edx
mov ecx, dword [ebp - 8]
mov ebx, 0xcf
xor dword [ebp - 8], ebx
sbb esi, ecx
mov dword [ebp - 8], ebx
mov dword [ebp - 8], esi
mov dword [ebp - 0x44], eax
call fcn.0040937d
push 0x90b0f300
push 0x3a
push 0xa61c0500
push 0x964b6500
call fcn.004096f7
add esp, 0x10
call dword [sym.imp.kernel32.dll_GetEnvironmentStringsW]
mov ebx, 0xbf69
add dword [ebp - 8], ebx
mov dword [ebp - 0x30], eax
or dword [ebp - 8], eax
sbb ebx, esi
mov ecx, 0x4034
cmp ebx, edi
je 0x405e02
mov eax, dword [ebp - 8]
or dword [ebp - 8], eax
push 0x1d
pop edx
nop
nop
push 0x21
push 0xffffffffffffff85
call fcn.00408504
add esp, 8
cmp ebx, dword [ebp - 4]
jne 0x405e02
call fcn.00409aa4
mov edx, dword [ebp - 8]
push 0xd4c0d300
push 0x61
call fcn.004083ca
add esp, 8
push 0xffffffffffffffa8
call fcn.00409aa4
add esp, 4
mov edi, dword [ebp - 8]
push 0x1b
push 0xd6639300
push 0xe0dd6500
call fcn.004096f7
add esp, 0xc
push 0x76
call fcn.004095a7
add esp, 4
push 0x94001700
push 0x94148700
push 0xd6194800
push 0xce9fe00
call fcn.00408b96
add esp, 0x10
call fcn.0040917f
push 0x14
push 0xc60cac00
push 0x4b91400
call fcn.004095a7
add esp, 0xc
call fcn.0040937d
push 0xb4244200
call fcn.0040862c
add esp, 4
call fcn.004083ca
add dword [ebp - 8], ebx
push 0x79
push 0x69
push pe_nt_image_headers32
push 0x389c1e00
push 0x62
call fcn.00409bc5
add esp, 0x14
push 0x48
push 0x80d02800
push 0x58
push 6
call fcn.004098b4
add esp, 0x10
call fcn.004096f7
push 0xb464b800
push 0x563df200
push 0xf0f88300
push 0x7f
push 0x56315700
call fcn.00408b96
add esp, 0x14
and dword [ebp - 8], ebx
push 0xbce7ff00
push 0xffffffffffffff80
push 0xffffffffffffffb9
push 0x61
call fcn.00408c8e
add esp, 0x10
push 0x14e01200
push 0xb0c54100
push 0xfffffffffffffff8
push 0x3d
push 0xffffffffffffffa0
call fcn.004083ca
add esp, 0x14
cmp esi, dword [ebp - 0x40]
jne 0x405e02
mov edx, dword [ebp - 8]
push 0xc4a44900
call fcn.00409bc5
add esp, 4
test edi, 0x74
je 0x405e02
or dword [ebp - 8], edi
push 0xffffffffffffffad
push 0x9cdca300
push 0xffffffffffffffa5
call fcn.00407e91
add esp, 0xc
push 0x74
push 0x36782400
push 0x24c22b00
call fcn.0040917f
add esp, 0xc
call fcn.0040937d
sub dword [ebp - 8], eax
call fcn.004098b4
mov eax, dword [ebp - 8]
sub dword [ebp - 8], eax
cmp eax, dword [ebp - 0x38]
je 0x405e42
xor dword [ebp - 8], ebx
push 0xffffffffffffff82
call fcn.00408016
add esp, 4
add dword [ebp - 8], edi
push 0x9413b000
push 0xffffffffffffffd8
call fcn.00408016
add esp, 8
sub dword [ebp - 8], ebx
push 0x7d
push 0xc6323300
push 0x760c5000
push 0x497b800
push 0x4d
call fcn.00408e42
add esp, 0x14
sbb esi, ebx
push 0x7d
push 0xa09edf00
push 0xffffffffffffffe8
push 0x1f
call fcn.004095a7
add esp, 0x10
cmp esi, edi
je 0x405ffd
push 0xffffffffffffff99
push 0x96223e00
push 0xa63cd100
push 0x62
push 0xffffffffffffff83
call fcn.00408e42
add esp, 0x14
sub dword [ebp - 8], edi
mov edx, 0x94
push 0xc63dae00
push 0xec1dbf00
call fcn.00408504
add esp, 8
push 0x62d7600
push 0xa674bc00
call fcn.0040862c
add esp, 8
push 0xffffffffffffffdc
push 0xaceec300
push 0xffffffffffffffb1
push 0x90b6a500
push 0xffffffffffffffaa
call fcn.00409aa4
add esp, 0x14
mov edi, dword [ebp - 8]
push 0x78c88b00
push 0x44
push 0x30cdb300
call fcn.00408504
add esp, 0xc
push 0x9431e500
push 0x19
push 0x964a7900
call fcn.00409aa4
add esp, 0xc
test esi, 0x90
je 0x405ffd
push 0x34912b00
push 0x24
push 0xffffffffffffff88
push 0x36
call fcn.00408016
add esp, 0x10
push 0x84ac5400
push 0x26339d00
push 0x5605f800
call fcn.004098b4
add esp, 0xc
push 0xffffffffffffffd9
push 0x2a
call fcn.00408e42
add esp, 8
push 0xffffffffffffffa5
push 0x86005d00
push 0xffffffffffffff9c
push 0x14247800
push 0x59
call fcn.00409bc5
add esp, 0x14
mov eax, dword [ebp - 8]
push 0x20
push 0xca2c000
call fcn.00408504
add esp, 8
push 0x6a
push 0x1476d300
push 0xc88a8b00
push 0xffffffffffffffe8
push 0xffffffffffffffba
call fcn.0040882a
add esp, 0x14
mov ecx, dword [ebp - 8]
push 0x248cd300
push 0xffffffffffffffb7
push 0x161d4400
push 5
push 0xffffffffffffff98
call fcn.0040862c
add esp, 0x14
push 0xb438dd00
push 0xffffffffffffffc7
call fcn.0040882a
add esp, 8
push 0x3e
push 0x16627000
push 0xffffffffffffffc0
push 0x19
push 0x44a51600
call fcn.00408e42
add esp, 0x14
push 0xffffffffffffff87
push 0xffffffffffffffb5
call fcn.00408504
add esp, 8
call fcn.00408b96
add dword [ebp - 8], esi
add dword [ebp - 8], edi
push 0xffffffffffffff9b
push 0xa4f57a00
push 0x18cf8500
call fcn.00407e91
add esp, 0xc
push 0xb4457400
push 0x79
push 0x61
push 0x660b6e00
call fcn.00408e42
add esp, 0x10
and edi, ebx
push 0xb47c2b00
push 0x40ac1300
call fcn.00407e91
add esp, 8
push 0xb450ae00
push 0x4f
call fcn.00408016
add esp, 8
cmp edi, esi
jne 0x4060c6
push 0x72
push 0x7b
push 0x942bde00
push 0xffffffffffffff8d
push 0xb464d400
call fcn.00407e91
add esp, 0x14
push 0xffffffffffffffa7
push 0x70
push 0xbc98f300
call fcn.004083ca
add esp, 0xc
push 0x44
push 0x6d
push 0xfffffffffffffff8
push 0x34b5ae00
push 0x88b22000
call fcn.00409bc5
add esp, 0x14
push 0xffffffffffffff9e
push 0xffffffffffffffed
push 0x27
push 0x1e
push 0x58931900
call fcn.0040882a
add esp, 0x14
push 0x1c
pop edx
nop
nop
push edx
pop eax
add eax, edi
push 0xfffffffffffffff3
push 0xb4332f00
push 0xb4518c00
push 0x70cfdb00
call fcn.0040937d
add esp, 0x10
push 0x20d59f00
call fcn.0040862c
add esp, 4
call fcn.004083ca
mov ecx, 0xd0cb
push 0xf6654d00
push 0x640c000
push 0x6ca42d00
push 0xe89e2f00
call fcn.00409bc5
add esp, 0x10
and esi, eax
mov edx, 0xbc
push 0x309b5400
call fcn.00409aa4
add esp, 4
sbb esi, eax
push 0x45
push 0xffffffffffffffae
push 0x2e
call fcn.004096f7
add esp, 0xc
call fcn.004083ca
shl esi, 1
push esi
pop eax
call fcn.004096f7
push 0x74
push 0x165db700
push 0x6c1ca400
push 0xffffffffffffff9d
push 0x33
call fcn.00407e91
add esp, 0x14
call fcn.0040882a
push 0xa0a30c00
push 0x3e
push 0xffffffffffffffc7
call fcn.0040882a
add esp, 0xc
push esi
pop edx
mov eax, dword [ebp - 8]
push 0x14051a00
push 0x52
push 0xffffffffffffff81
push 0xb65b6900
call fcn.004098b4
add esp, 0x10
mov eax, dword [0x4373a4]
push 0xffffffffffffffdc
call fcn.00408016
add esp, 4
push 0xffffffffffffffb4
push 0xb63800
push 0x5a
push 0xffffffffffffffe8
push pe_nt_image_headers32
call fcn.0040862c
add esp, 0x14
lea edx, [ebp - 0x48]
test edx, 0xb2
jne 0x4062a4
mov ecx, dword [ebp - 8]
mov eax, 0xa7
sbb eax, edi
cmp ecx, dword [ebp - 4]
jne 0x4062a4
mov dword [ebp - 0x1c], edx
test ecx, 0xbae8
je 0x4062a4
mov ebx, dword [ebp - 0x1c]
sub dword [ebp - 8], ebx
cmp edi, dword [0x4373a4]
jne 0x4062a4
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x1c]
sbb esi, ebx
shl eax, 1
add dword [ebp - 8], esi
test eax, 0xf6
jne 0x4062a4
sbb ecx, edx
mov edi, 0xe7
mov ebx, dword [ebp - 8]
sub dword [ebp - 8], eax
cmp ebx, dword [0x4373a4]
je 0x4062a4
add dword [ebp - 0x1c], edi
shl ecx, 1
add dword [ebp - 0x1c], ebx
cmp ecx, 0x49
je 0x4062a4
mov edi, dword [ebp - 0x1c]
add edi, edx
mov esi, dword [ebp - 8]
sub dword [ebp - 8], eax
mov dword [ebp - 0x1c], ebx
cmp edi, 0x7d
jne 0x4062a4
mov ebx, 0xde
mov eax, dword [0x4373a4]
cmp edi, dword [ebp - 0x2c]
je 0x4062a4
mov ebx, dword [ebp - 0x1c]
test edi, 0xc00110c0
jne 0x4062a4
cmp ebx, 0xffffffd8
jne 0x4062a4
and eax, edx
and eax, esi
add eax, ebx
and edi, edx
add dword [ebp - 0x1c], ecx
sub dword [ebp - 0x1c], edi
cmp eax, 0x34
je 0x4062a4
mov ebx, dword [ebp - 8]
mov edi, dword [ebp - 0x1c]
sub dword [ebp - 0x1c], esi
sbb ebx, ecx
cmp ebx, 0xa444c413
je 0x4062a4
mov ecx, dword [ebp - 0x1c]
mov esi, 0x31fb
sbb ebx, edi
cmp ebx, ecx
jne 0x4062a4
sub dword [ebp - 0x1c], ebx
or ecx, eax
and dword [ebp - 0x1c], ecx
add esi, edi
cmp esi, dword [ebp - 0x20]
je 0x4062a4
mov ebx, dword [ebp - 8]
sub eax, eax
sub dword [ebp - 8], eax
sub dword [ebp - 8], esi
or ebx, esi
add dword [ebp - 8], ebx
or ebx, edx
sub esi, esi
cmp edx, 0xffffffc9
jne 0x4062b8
sub dword [ebp - 8], ebx
push 0xd
pop esi
nop
nop
add dword [ebp - 8], esi
push edx
push 0xffffffffffffffd6
push 0x6c5e6700
push 0xffffffffffffff8d
call fcn.00408e42
add esp, 0xc
push 0x2dfe7f2e
call fcn.00408016
push 0x28893100
push 0x14
push 0x44
push 0x98b41900
push 0x6c23ac00
call fcn.0040917f
add esp, 0x14
push 0x565a8f00
push 0x14008400
push 0xb4e6f200
call fcn.00408016
add esp, 0xc
call fcn.00406984
mov eax, dword [ebp - 8]
and dword [ebp - 8], eax
mov ebx, dword [ebp - 0x48]
cmp ebx, eax
je 0x40631b
add dword [ebp - 8], ebx
push 3
push 0x34
push 0x84e9e100
call fcn.004083ca
add esp, 0xc
shr ebx, 0x10
push 0x943c9800
push 0xffffffffffffffe7
push 0x28ff1c00
push 0xb475c300
call fcn.004096f7
add esp, 0x10
cmp ebx, 0x580f
jne 0x406626
push 0x6268700
push 0xe61cc500
push 0x38
push 0xb08c1600
push 0x19
call fcn.00408b96
add esp, 0x14
push 0x10a86e00
push 0xffffffffffffffff
push 0x165db500
push 0xffffffffffffff98
push 0x4ccbe600
call fcn.004096f7
add esp, 0x14
mov ecx, 0x58504822
mov edx, dword [ebp - 8]
add dword [ebp - 8], ecx
and edx, esi
add dword [ebp - 8], edx
sub ecx, dword [ebp - 0x48]
sub dword [ebp - 8], ecx
call ecx
mov edx, dword [ebp - 8]
mov ecx, dword [0x4373a4]
sub dword [ebp - 8], edi
cmp ebx, ecx
jne 0x40646d
and ecx, esi
test edx, 0x8e
jne 0x40646d
mov ebx, dword [ebp - 8]
cmp ebx, dword [0x4373a4]
je 0x40646d
sub dword [ebp - 8], ebx
cmp edx, ebx
je 0x40646d
sbb edx, edi
mov esi, dword [0x4373a4]
add dword [ebp - 8], esi
sub ecx, ecx
cmp edx, 0xfffffffd
jne 0x40646d
mov esi, 0x419e
and dword [ebp - 8], eax
sub ebx, ebx
cmp edx, dword [0x4373a4]
jne 0x40646d
add dword [ebp - 8], eax
add dword [ebp - 8], esi
mov edi, dword [ebp - 8]
mov esi, dword [ebp - 8]
sub dword [ebp - 8], ecx
cmp esi, 0x6857
je 0x40646d
sbb edi, eax
cmp edi, dword [0x4373a4]
je 0x40646d
xor dword [ebp - 8], esi
cmp edi, dword [0x4373a4]
je 0x40646d
or ebx, edx
add edi, esi
sbb edi, eax
sbb edi, esi
mov edx, 0x9f
mov esi, dword [ebp - 8]
add dword [ebp - 8], esi
test edi, 0xba7f
je 0x40646d
mov esi, dword [ebp - 8]
add esi, eax
push ebx
pop ecx
and esi, ebx
add ecx, eax
cmp edi, esi
jne 0x40646d
add dword [ebp - 8], ecx
add dword [ebp - 8], esi
mov ebx, dword [ebp - 8]
sub dword [ebp - 8], edx
mov dword [ebp - 8], edi
add dword [ebp - 8], edi
add dword [ebp - 8], ebx
mov dword [ebp - 0x34], eax
sbb esi, eax
push 0x21
push 0x37
call fcn.0040937d
add esp, 8
push 0x28
push 0xc4e54a00
call fcn.0040937d
add esp, 8
sbb esi, eax
cmp esi, dword [0x4373a4]
je 0x40650e
mov edi, dword [ebp - 8]
sbb esi, edi
add dword [ebp - 8], edi
push 0x1634be00
push 0xd4ea6700
push 0xfffffffffffffffa
push 0xf
push 0x944bce00
call fcn.004098b4
add esp, 0x14
push 0xffffffffffffffe6
push 0x24837500
push 0x2cbe6600
call fcn.0040862c
add esp, 0xc
push 0x9415dd00
push 0xffffffffffffffe2
push 0x21
call fcn.00408c8e
add esp, 0xc
push 0xa0a0cc00
call fcn.0040937d
add esp, 4
push 0xb
push 0xec1c0d00
call fcn.0040917f
add esp, 8
mov ecx, dword [ebp - 8]
push 0xb404b200
call fcn.0040882a
add esp, 4
add dword [ebp - 8], esi
mov edi, 0x40763b
call fcn.004096f7
push dword [ebp - 0x48]
push 0x58111353
push dword [ebp - 0x34]
call edi
push 0x5490ca00
push 0xffffffffffffff9e
push 0x6304300
push 0x6c23ab00
call fcn.004095a7
add esp, 0x10
push 0xfffffffffffffffb
call fcn.00408e42
add esp, 4
push 0x1437e700
push 0x63
call fcn.0040882a
add esp, 8
mov eax, dword [ebp - 8]
sub edx, edx
add edi, esi
xor dword [ebp - 8], edi
push 0x967e7c00
push 0x6c271100
push 0x37
push 0xe6395f00
push 0x965a7c00
call fcn.00407e91
add esp, 0x14
add dword [ebp - 0x34], 0x2d
sub dword [ebp - 8], eax
mov edx, dword [ebp - 0x34]
push edi
pop ecx
cmp edx, dword [ebp - 0x4c]
jne 0x4065f6
sbb ecx, edx
shl ecx, 1
cmp ecx, ebx
je 0x4065f6
add ecx, eax
sbb ecx, eax
sbb ecx, esi
xor dword [ebp - 8], edx
sub eax, eax
sbb ecx, eax
add dword [ebp - 8], edx
add dword [ebp - 8], esi
mov eax, dword [ebp - 8]
sbb eax, esi
add dword [ebp - 8], ecx
cmp eax, 0xffffffcc
jne 0x4065f6
mov ecx, 0xee2f
mov esi, dword [ebp - 8]
and dword [ebp - 8], esi
cmp eax, 0x9df7
je 0x4065f6
sub esi, esi
mov edi, dword [ebp - 8]
sbb ecx, eax
sbb ecx, edi
sub dword [ebp - 8], ecx
sbb esi, ebx
or esi, eax
sbb esi, edi
test esi, 0xe0
je 0x4065f6
push ebx
pop edi
push edx
pop eax
sbb edi, esi
add dword [ebp - 8], ebx
sub dword [ebp - 8], eax
sub dword [ebp - 8], edi
call edx
push 0xccd38a00
call fcn.004083ca
add esp, 4
push 0xa656cf00
push 0x1a
push 0xc4f9e900
push 0x43
push 0xdcf53300
call fcn.004098b4
add esp, 0x14
sub dword [ebp - 8], esi
xor dword [ebp - 8], ebx
sbb ebx, eax
push 0x18a46f00
push 0x39
push 0x20df6100
call fcn.00408504
add esp, 0xc
push 0x6e
call fcn.004083ca
add esp, 4
push 0x4c
push 0xb637b800
call fcn.00408e42
add esp, 8
push 0x9cec6800
push 0xffffffffffffffa1
call fcn.004095a7
add esp, 8
shl ebx, 1
mov edx, 0xa5
push 0x88a9eb00
push 0xffffffffffffffc6
call fcn.00408b96
add esp, 8
mov edi, dword [ebp - 8]
add ebx, edi
push 0xffffffffffffffae
push 0xd8db2600
push 0xffffffffffffffd3
push 0xffffffffffffff9a
push 0xd630e700
call fcn.00408c8e
add esp, 0x14
sbb ebx, esi
call fcn.004095a7
add dword [ebp - 8], eax
push 0xffffffffffffff9d
push 0x64b3100
push 0x48d0aa00
call fcn.00408c8e
add esp, 0xc
push 0x57
push 0xffffffffffffffee
push 0xffffffffffffffa7
push 0x45
push 0xf49fae00
call fcn.00408016
add esp, 0x14
sbb ebx, edi
push 0xffffffffffffff85
push 0x264ba200
push 0x80fc8900
push 0xffffffffffffff88
push 0xffffffffffffff90
call fcn.00408b96
add esp, 0x14
test ebx, 0x2005c070
jne 0x406811
push 0x94f73a00
push 0xa6574400
push 0xffffffffffffffdd
push 0x77
push 0x68ba1b00
call fcn.00408504
add esp, 0x14
push 0xffffffffffffffb6
push 0xc
push 0x3489a700
call fcn.00408016
add esp, 0xc
push 0x2c2c9d00
call fcn.00408016
add esp, 4
push 0x51
pop ecx
nop
nop
push 0xffffffffffffffaf
push 0x809800
push 0x46
push 0xacd4fa00
call fcn.00407e91
add esp, 0x10
mov edi, dword [ebp - 8]
push 0xc619fd00
push 0xffffffffffffffae
push 0x28
push 0xffffffffffffff87
call fcn.00408b96
add esp, 0x10
push 0xb4dd3300
push 0xffffffffffffff8c
push 0x50
push 0x8b0e400
call fcn.00408e42
add esp, 0x10
call fcn.004096f7
mov dword [ebp - 8], edi
push 0xffffffffffffffd1
push 0xffffffffffffffe4
push 0x78faa200
push 0xfc801600
push 0xffffffffffffffbd
call fcn.004095a7
add esp, 0x14
test ebx, 0xe9
je 0x406811
push 0xb610ca00
push 0xfffffffffffffffd
call fcn.004096f7
add esp, 8
push 0xbcc67000
push 0xffffffffffffff95
push 0x84efa500
push 0xec0ed100
call fcn.00408b96
add esp, 0x10
push 0x58eb8000
push 0xffffffffffffffe5
push 0xffffffffffffffd2
push 0x20
call fcn.00407e91
add esp, 0x10
push 0xffffffffffffffed
push 0xffffffffffffffa8
push 0xfc802600
push 0x7ca5fd00
push 0x266d6e00
call fcn.0040862c
add esp, 0x14
push 0x6f
pop ecx
nop
nop
add dword [ebp - 8], ebx
push 0xe6635600
push 0x14f35d00
push 0xfffffffffffffff0
push 0xffffffffffffff8c
push 0x66594300
call fcn.00408e42
add esp, 0x14
push 0x7ca88000
push 0xb6182400
push 0x80a9f300
call fcn.004098b4
add esp, 0xc
or eax, esi
push 0x94522300
push 0xffffffffffffff96
push 0x69
call fcn.0040917f
add esp, 0xc
push 0x5f
push 0xffffffffffffffa2
push 0xffffffffffffff9e
push 0x32
push 0xec795400
call fcn.004095a7
add esp, 0x14
push 0xb41d8a00
push 0xffffffffffffff9d
push 0x848a8d00
call fcn.004098b4
add esp, 0xc
pop edi
push 0xffffffffffffffb8
call fcn.00407e91
add esp, 4
push 0xbccdad00
call fcn.00408b96
add esp, 4
pop esi
add ebx, esi
push 0xe6799f00
push 0xffffffffffffffce
push 0x360b5d00
call fcn.0040917f
add esp, 0xc
call fcn.00409aa4
push 0x5a
push 0x28f10b00
call fcn.00408e42
add esp, 8
push 0xffffffffffffff9b
push 0xffffffffffffff8d
push 0xffffffffffffff9f
push 0xffffffffffffff99
push 0x6c16da00
call fcn.00408016
add esp, 0x14
mov edx, dword [ebp - 8]
cmp edx, 0xffffff9e
jne 0x40694f
push 0x27
pop eax
nop
nop
push 0x66
push 0xffffffffffffffcc
push 0x488e9f00
call fcn.00408016
add esp, 0xc
push 0x41
push 0xffffffffffffffde
push 0xffffffffffffffbb
call fcn.00409bc5
add esp, 0xc
sub dword [ebp - 8], edi
call fcn.00408504
cmp ebx, dword [0x4373a4]
je 0x40694f
call fcn.004098b4
push 0x1e
push 0x77
push 0x6656fb00
push 0xffffffffffffff89
call fcn.00407e91
add esp, 0x10
push 0xffffffffffffffc1
push 0xffffffffffffffb5
push 0xffffffffffffff97
call fcn.00408504
add esp, 0xc
push 0xffffffffffffffec
push 0xffffffffffffff8a
push 0x1b
call fcn.0040882a
add esp, 0xc
call fcn.0040917f
push 0x262b6e00
push 0x6cbcbf00
push 0x608ca700
call fcn.00408e42
add esp, 0xc
add dword [ebp - 8], ebx
push 0x94162000
push 0x18e8df00
push 0xffffffffffffffa7
call fcn.0040937d
add esp, 0xc
pop ebx
push 0x18b2cf00
push 0x4cb8be00
push 0x76
call fcn.004095a7
add esp, 0xc
call fcn.0040937d
leave
ret