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

Disassembly:
sub esp, 0x144
xor eax, eax
xor ecx, ecx
mov dword [esp + 0x58], eax
xor edx, edx
mov dword [esp + 0x28], ecx
mov dword [esp + 0x5c], eax
mov dword [esp + 0x10], edx
push ebx
mov dword [esp + 0x30], ecx
push ebp
mov dword [esp + 0x68], eax
mov dword [esp + 0x1c], edx
push esi
mov dword [esp + 0x3c], ecx
lea eax, [esp + 0x1c]
push edi
mov dword [esp + 0x28], edx
lea ecx, [esp + 0x38]
push eax
mov eax, dword [esp + 0x15c]
lea edx, [esp + 0x6c]
push ecx
push edx
push eax
push 3
push 0x42cb50
mov dword [esp + 0x2c], 0
call fcn.0041d610
add esp, 0x18
test ax, ax
je 0x404127
pop edi
pop esi
pop ebp
mov eax, 0x71
pop ebx
add esp, 0x144
ret
lea ecx, [esp + 0x68]
push ecx
call fcn.0041fe17
lea edx, [esp + 0x3c]
mov esi, eax
push edx
call fcn.0041fe17
mov ebx, eax
lea eax, [esp + 0x28]
push eax
call fcn.0041fd8c
lea ecx, [esp + 0x1c]
mov edi, eax
push ecx
push ebx
push esi
call fcn.00406ee0
add esp, 0x18
test ax, ax
je 0x40416f
pop edi
pop esi
pop ebp
and eax, 0xffff
pop ebx
add esp, 0x144
ret
xor edx, edx
lea eax, [esp + 0x14]
mov dword [esp + 0x18], edx
lea ecx, [esp + 0x18]
mov word [esp + 0x1c], dx
mov edx, dword [esp + 0x10]
push eax
push ecx
push edi
push edx
call fcn.00416150
mov ebp, eax
test bp, bp
je 0x404224
cmp bp, 3
jne 0x404212
mov eax, dword [esp + 0x10]
xor esi, esi
mov edi, dword [eax + 0x418]
push edi
call fcn.0041af00
add esp, 4
test eax, eax
jne 0x4041de
push edi
call fcn.0041af10
mov esi, eax
add esp, 4
cmp word [esi], bx
je 0x4041de
push edi
call fcn.0041af20
mov edi, eax
push edi
call fcn.0041af00
add esp, 8
test eax, eax
je 0x4041b9
mov edx, dword [esp + 0x10]
mov eax, dword [esi + 0xd0]
lea ecx, [esp + 0x74]
push ecx
push edx
lea ecx, [esi + 0x10]
push eax
add esi, 0x50
push ecx
push esi
push 0
push 3
push 4
call fcn.00410a90
lea edx, [esp + 0x94]
push edx
call fcn.0041bdc0
add esp, 0x24
pop edi
mov eax, ebp
pop esi
pop ebp
and eax, 0xffff
pop ebx
add esp, 0x144
ret
mov ecx, dword [esp + 0x14]
xor eax, eax
and ecx, 0xffff
mov dword [esp + 0x50], eax
push ecx
lea edx, [esp + 0x54]
mov dword [esp + 0x58], eax
push 0x42cb3c
push edx
mov dword [esp + 0x64], eax
call fcn.0041ecde
mov ecx, dword [esp + 0x28]
xor eax, eax
and ecx, 0xffff
mov dword [esp + 0x68], eax
push ecx
lea edx, [esp + 0x6c]
mov dword [esp + 0x70], eax
push 0x42cb3c
push edx
mov dword [esp + 0x7c], eax
call fcn.0041ecde
mov ecx, dword [esp + 0x32]
xor eax, eax
and ecx, 0xffff
mov dword [esp + 0x5c], eax
push ecx
lea edx, [esp + 0x60]
mov dword [esp + 0x64], eax
push 0x42cb3c
push edx
mov dword [esp + 0x70], eax
call fcn.0041ecde
mov ecx, dword [esp + 0x3c]
xor eax, eax
and ecx, 0xffff
mov dword [esp + 0x50], eax
push ecx
lea edx, [esp + 0x54]
mov dword [esp + 0x58], eax
push 0x42cb3c
push edx
mov dword [esp + 0x64], eax
call fcn.0041ecde
lea eax, [esp + 0x80]
lea ecx, [esp + 0x5c]
push eax
lea edx, [esp + 0x78]
push ecx
lea eax, [esp + 0x94]
push edx
push eax
push 4
push 0x42cb50
call fcn.0041d1b0
mov edx, eax
add esp, 0x48
test edx, edx
jne 0x404303
pop edi
pop esi
pop ebp
mov eax, 0x67
pop ebx
add esp, 0x144
ret
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
push edx
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, dword [esp + 0x160]
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.0041e880
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x144
ret