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

Disassembly:
mov eax, 0x429549
call fcn.0041e9fc
sub esp, 0xe0
push ebx
push ebp
push esi
push edi
mov ebx, ecx
mov dword [esp + 0x28], ebx
and dword [esp + 0x8c], 0
and dword [esp + 0x90], 0
push 0x20
pop esi
xor ecx, ecx
push 0x10
pop ebp
lea edx, [ebx + 0x68]
lea eax, [ebx + 0x6c]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], edx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], ecx
mov dword [esp + 0x94], edx
xor edx, edx
push 4
pop ecx
mov dword [esp + 0x44], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x74], eax
lea eax, [ebx + 0x64]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xac], edx
mov dword [esp + 0xb0], edx
mov dword [esp + 0xc4], edx
mov dword [esp + 0xc8], edx
mov dword [esp + 0xdc], edx
mov dword [esp + 0xe0], edx
mov dword [esp + 0xe4], ecx
mov ecx, dword [esp + 0x104]
mov edx, str..text
mov dword [esp + 0x48], 0xfffffff5
mov dword [esp + 0x50], 0x1d
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], 0x4305e8
mov dword [esp + 0x68], 0x26
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x70], 0x4305fc
mov dword [esp + 0x88], 0x430614
mov dword [esp + 0x98], 0x1b
mov dword [esp + 0xa0], 0x430624
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], 0xffffffe8
mov dword [esp + 0xb4], esi
mov dword [esp + 0xb8], 0x430630
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], 0xfffffff4
mov dword [esp + 0xcc], ebp
mov dword [esp + 0xd0], 0x430640
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], 0xffffffec
mov dword [esp + 0xe8], 0x430650
call fcn.0040e3c6
mov esi, dword [eax + 0xc]
add esi, dword [esp + 0x104]
mov eax, dword [eax + 8]
xor ecx, ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], ecx
lea edi, [esp + 0x4c]
mov eax, dword [edi + 8]
test dword [ebx + 0x118], eax
je 0x401af0
mov eax, dword [edi - 8]
test eax, eax
je 0x4019fe
cmp dword [eax], 0
jne 0x401af0
mov eax, dword [edi]
test eax, eax
je 0x401a0d
cmp dword [eax], 0
jne 0x401af0
mov edx, dword [edi + 0xc]
lea ecx, [esp + 0x2c]
call fcn.0040e22f
and dword [esp + 0xf8], 0
jmp 0x401a35
mov ecx, dword [esp + 0x2c]
cmp dword [esp + 0x40], ebp
jae 0x401a31
lea ecx, [esp + 0x2c]
mov byte [ecx + eax], 0
push 1
push ecx
lea eax, [esp + 0x1c]
push eax
lea ecx, [esp + 0x38]
mov byte [esp + 0x20], 0xcc
call fcn.00402296
cmp eax, 0xffffffff
jne 0x401a23
cmp dword [esp + 0x40], ebp
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x2c]
jae 0x401a62
lea ebp, [esp + 0x2c]
mov edx, dword [esp + 0x20]
mov eax, edx
test ebx, ebx
je 0x401ad0
movzx ecx, byte [ebp]
mov dword [esp + 0x24], ecx
cmp edx, ebx
jb 0x401aae
sub eax, ebx
inc eax
push eax
push ecx
push esi
call fcn.0041dad0
mov esi, eax
add esp, 0xc
test esi, esi
je 0x401aae
push ebx
push ebp
push esi
call fcn.0041c2c4
add esp, 0xc
test eax, eax
je 0x401ab0
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
inc esi
sub eax, esi
add eax, dword [esp + 0x1c]
cmp eax, ebx
jae 0x401a78
xor esi, esi
test esi, esi
je 0x401ad0
mov ecx, dword [edi - 8]
test ecx, ecx
je 0x401ac2
mov eax, dword [edi - 4]
add eax, esi
mov dword [ecx], eax
mov ecx, dword [edi]
test ecx, ecx
je 0x401ad0
mov eax, dword [edi + 4]
mov eax, dword [esi + eax]
mov dword [ecx], eax
or dword [esp + 0xf8], 0xffffffff
lea ecx, [esp + 0x2c]
call fcn.00402152
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esp + 0x28]
push 0x10
pop ebp
add ecx, 0x18
add edi, 0x18
mov dword [esp + 0x18], ecx
cmp ecx, 0xa8
jb 0x4019df
mov ecx, dword [esp + 0xf0]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
leave
ret 4