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

Disassembly:
push ebx
push esi
sub esp, 0x1ec
mov ecx, dword [esp + 0x208]
mov edx, dword [esp + 0x204]
mov eax, dword [esp + 0x200]
mov eax, dword [esp + 0x1fc]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1f8]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], ecx
mov eax, dword [eax]
mov al, byte [eax + 0x10]
and al, 1
movzx eax, al
cmp eax, 1
jne 0x40b2b2
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
lea eax, [0x47c4a0]
mov dword [esp + 0x1b0], eax
lea eax, [0x47c4a0]
mov dword [esp + 0x1c4], eax
lea eax, [fcn.004603e0]
mov dword [esp + 0x1c8], eax
lea eax, [0x47c4a0]
mov dword [esp], eax
call fcn.004650b0
mov dword [esp], eax
call fcn.00464c90
mov dword [esp + 0x1bc], eax
lea eax, [fcn.004603e0]
mov dword [esp + 0x1c0], eax
mov eax, dword [esp + 0x1bc]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x1c0]
mov dword [esp + 0x70], eax
lea eax, [0x47c46c]
mov dword [esp + 0x1ac], eax
mov dword [esp + 0x1a8], 0xa
mov dword [esp + 0x1a4], 0
mov eax, dword [esp + 0x1a4]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x1a8]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x68], eax
mov byte [esp + 0xbf], 3
mov dword [esp + 0xc0], 2
mov dword [esp + 0xcc], 1
mov dword [esp + 0xc8], 1
mov bl, byte [esp + 0xbf]
mov esi, dword [esp + 0xc0]
mov edx, dword [esp + 0xc4]
mov ecx, dword [esp + 0xc8]
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], 0x20
mov byte [esp + 0x18f], bl
mov dword [esp + 0x190], 0
mov dword [esp + 0x194], esi
mov dword [esp + 0x198], edx
mov dword [esp + 0x19c], ecx
mov dword [esp + 0x1a0], eax
mov dword [esp + 0xb0], 0
mov dword [esp + 0xac], 0x20
mov byte [esp + 0xb8], bl
mov dword [esp + 0xb4], 0
mov dword [esp + 0x9c], esi
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
lea ecx, [esp + 0x7c]
lea eax, [esp + 0x9c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
call fcn.0046c8a0
lea esi, [esp + 0x44]
lea edx, [0x47c4a0]
lea ecx, [esp + 0x5c]
lea eax, [esp + 0x7c]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], 1
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], 2
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 1
call fcn.00419290
mov ecx, dword [esp + 0x2c]
lea eax, [esp + 0x44]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004193e0
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
and al, 1
mov byte [esp + 0x43], al
mov al, byte [esp + 0x43]
and al, 1
movzx eax, al
cmp eax, 0
jne 0x40b31c
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [esp + 0x28], eax
lea ecx, [esp + 0xd4]
lea eax, [0x47c560]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0045ccd0
mov ecx, dword [esp + 0x28]
lea eax, [esp + 0xd4]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004193e0
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
and al, 1
mov byte [esp + 0xd3], al
mov al, byte [esp + 0xd3]
and al, 1
movzx eax, al
cmp eax, 0
je 0x40b33f
jmp 0x40b3c6
lea eax, [0x47c540]
mov dword [esp], eax
call fcn.00459c00
and al, 1
mov byte [esp + 0x42], al
mov al, byte [esp + 0x42]
and al, 1
add esp, 0x1ec
pop esi
pop ebx
ret
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov eax, dword [edx]
mov esi, dword [eax + 4]
mov eax, dword [eax + 8]
mov edx, dword [edx]
mov edx, dword [edx]
mov dword [esp + 0xf0], edx
mov edx, dword [ecx]
mov dword [esp + 0xf4], edx
mov edx, dword [ecx + 4]
mov dword [esp + 0xf8], edx
mov ecx, dword [ecx + 8]
mov dword [esp + 0xfc], ecx
mov eax, dword [eax + 0x10]
mov edx, dword [esp + 0xf0]
lea ecx, [esp + 0xf0]
add ecx, 4
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call eax
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
and al, 1
mov byte [esp + 0xef], al
mov al, byte [esp + 0xef]
and al, 1
movzx eax, al
cmp eax, 0
je 0x40b3df
jmp 0x40b4dd
lea eax, [0x47c5bc]
mov dword [esp], eax
call fcn.00459c00
and al, 1
mov byte [esp + 0x42], al
jmp 0x40b330
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [esp + 0x24], eax
lea eax, [esp + 0x200]
mov dword [esp + 0x1b8], eax
lea eax, [esp + 0x200]
mov dword [esp + 0x1d4], eax
lea eax, [fcn.00464410]
mov dword [esp + 0x1d8], eax
lea eax, [esp + 0x200]
mov dword [esp], eax
call fcn.004651c0
mov dword [esp], eax
call fcn.00464de0
mov dword [esp + 0x1cc], eax
lea eax, [fcn.00464410]
mov dword [esp + 0x1d0], eax
mov eax, dword [esp + 0x1cc]
mov dword [esp + 0x124], eax
mov eax, dword [esp + 0x1d0]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x124]
mov dword [esp + 0x11c], eax
mov eax, dword [esp + 0x128]
mov dword [esp + 0x120], eax
lea edx, [esp + 0x104]
lea ecx, [0x47c56c]
lea eax, [esp + 0x11c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045cdd0
mov ecx, dword [esp + 0x24]
lea eax, [esp + 0x104]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004193e0
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
and al, 1
mov byte [esp + 0x103], al
mov al, byte [esp + 0x103]
and al, 1
movzx eax, al
cmp eax, 0
je 0x40b4f6
jmp 0x40b502
lea eax, [0x47c5ac]
mov dword [esp], eax
call fcn.00459c00
and al, 1
mov byte [esp + 0x42], al
jmp 0x40b330
cmp dword [esp + 0x38], 1
je 0x40b51b
jmp 0x40b622
lea eax, [0x47c59c]
mov dword [esp], eax
call fcn.00459c00
and al, 1
mov byte [esp + 0x42], al
jmp 0x40b330
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x12c], ecx
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [esp + 0x20], eax
lea eax, [esp + 0x12c]
mov dword [esp + 0x1b4], eax
lea eax, [esp + 0x12c]
mov dword [esp + 0x1e4], eax
lea eax, [fcn.00464410]
mov dword [esp + 0x1e8], eax
lea eax, [esp + 0x12c]
mov dword [esp], eax
call fcn.004651c0
mov dword [esp], eax
call fcn.00464de0
mov dword [esp + 0x1dc], eax
lea eax, [fcn.00464410]
mov dword [esp + 0x1e0], eax
mov eax, dword [esp + 0x1dc]
mov dword [esp + 0x154], eax
mov eax, dword [esp + 0x1e0]
mov dword [esp + 0x158], eax
mov eax, dword [esp + 0x154]
mov dword [esp + 0x14c], eax
mov eax, dword [esp + 0x158]
mov dword [esp + 0x150], eax
lea edx, [esp + 0x134]
lea ecx, [0x47c56c]
lea eax, [esp + 0x14c]
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0045cdd0
mov ecx, dword [esp + 0x20]
lea eax, [esp + 0x134]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004193e0
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
and al, 1
mov byte [esp + 0x133], al
mov al, byte [esp + 0x133]
and al, 1
movzx eax, al
cmp eax, 0
jne 0x40b689
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov eax, dword [eax]
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0x160]
lea eax, [0x47c584]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0045ccd0
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x160]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004193e0
movzx ecx, al
and ecx, 1
mov eax, esp
mov dword [eax], ecx
call fcn.00459ba0
and al, 1
mov byte [esp + 0x15f], al
mov al, byte [esp + 0x15f]
and al, 1
movzx eax, al
cmp eax, 0
je 0x40b6a2
jmp 0x40b6ac
lea eax, [0x47c574]
mov dword [esp], eax
call fcn.00459c00
and al, 1
mov byte [esp + 0x42], al
jmp 0x40b330
mov byte [esp + 0x42], 0
jmp 0x40b330
lea eax, [0x47c58c]
mov dword [esp], eax
call fcn.00459c00
and al, 1
mov byte [esp + 0x42], al
jmp 0x40b330