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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x28
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push dword [ebp + 0xc]
xor eax, eax
mov edi, SysReAllocString
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 4], edi
mov dword [ebp - 8], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x18], edi
call fcn.00418e4e
push eax
push dword [esi + 0x1c4]
push 0x200000c8
push 1
call fcn.0040bfb2
add esp, 0x10
lea ecx, [ebp - 0x24]
lea eax, [esi + 0xa8]
push ecx
push eax
call fcn.00416cc4
mov ebx, eax
test ebx, ebx
jns 0x41878d
push 0x44249e
jmp 0x418ce0
mov eax, dword [esi + 0xb8]
push dword [esi + 0x1c4]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x38]
push eax
push 1
lea eax, [esi + 0xa8]
push eax
call fcn.00416d9c
mov ebx, eax
test ebx, ebx
jns 0x4187ce
push ebx
push 0x15a
push 0x441952
call fcn.004315c0
push 0x442486
jmp 0x418ce0
lea eax, [esi + 0x1b8]
push eax
lea ebx, [esi + 0x208]
push ebx
call fcn.0041b56e
mov eax, dword [esi + 0xf4]
mov ecx, dword [ebp + 0xc]
mov dword [esi + 0x20c], eax
lea eax, [esi + 0x78]
push eax
push ecx
mov dword [ebx], ecx
call fcn.0041ab9a
mov ebx, eax
test ebx, ebx
jns 0x41880c
push 0x44246c
jmp 0x418ce0
xor eax, eax
cmp dword [esi + 0xf0], eax
jne 0x41881c
cmp dword [esi + 0x30], 4
jne 0x41881f
xor eax, eax
inc eax
mov dword [esi + 0x214], eax
lea eax, [esi + 0x1f0]
push eax
lea eax, [esi + 0x1c]
push eax
push dword [ebp + 0xc]
lea ecx, [esi + 0xe8]
push ecx
call fcn.0041af28
mov ebx, eax
test ebx, ebx
jns 0x41884f
push 0x44244e
jmp 0x418ce0
lea eax, [esi + 0x208]
push eax
push esi
call fcn.0042814a
mov ebx, eax
test ebx, ebx
jns 0x41886c
push 0x44241a
jmp 0x418ce0
cmp dword [ebp + 0xc], 2
jne 0x4188a9
lea eax, [ebp - 0x10]
push eax
lea eax, [esi + 0x1b0]
push eax
lea eax, [esi + 0x78]
push eax
push dword [esi + 0x4c]
lea eax, [esi + 0x208]
push dword [esi + 0x48]
push dword [esi + 0x12c]
push eax
call fcn.0041c108
mov ebx, eax
test ebx, ebx
jns 0x4188bc
push 0x4423f0
jmp 0x418ce0
cmp dword [esi + 0xe8], 0
je 0x4188bc
mov dword [esi + 0x210], 1
mov eax, dword [esi + 0x244]
and dword [ebp + 8], 0
cmp dword [esi + 0x1c4], 0
mov dword [ebp - 0x28], eax
jbe 0x418b05
cmp dword [ebp + 0xc], 3
jne 0x4188e8
mov edi, dword [esi + 0x1c4]
sub edi, dword [ebp + 8]
dec edi
jmp 0x4188eb
mov edi, dword [ebp + 8]
imul edi, edi, 0xc8
add edi, dword [esi + 0x1c0]
cmp dword [ebp + 0xc], 3
jne 0x418902
mov eax, dword [edi + 0x3c]
jmp 0x418905
mov eax, dword [edi + 0x38]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x418947
cmp dword [ebp - 0x1c], 0
je 0x418928
lea eax, [esi + 0x208]
push eax
call fcn.0041b9f2
mov ebx, eax
test ebx, ebx
js 0x418b65
push dword [ebp - 0x14]
lea eax, [esi + 0x208]
push eax
call fcn.0041aeba
mov ebx, eax
test ebx, ebx
js 0x418c1c
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x1c], eax
lea eax, [edi + 0x4c]
push eax
push dword [esi + 0x38]
lea eax, [esi + 0x78]
push dword [edi + 0xc]
push eax
push dword [ebp + 0xc]
xor eax, eax
cmp dword [edi + 0x18], eax
sete al
push eax
push dword [edi + 0x40]
push dword [edi + 0x80]
call fcn.0041b654
mov ebx, eax
test ebx, ebx
js 0x418b6f
mov eax, dword [edi + 0x4c]
lea ecx, [edi + 0x50]
push ecx
push dword [edi]
mov dword [ecx], eax
mov eax, dword [esi + 0xb8]
mov edx, dword [eax]
push eax
call dword [edx + 0x40]
push eax
push 1
lea eax, [esi + 0xa8]
push eax
call fcn.00416d9c
mov ebx, eax
test ebx, ebx
js 0x418b79
cmp dword [edi + 0x50], 0
je 0x418a5e
cmp dword [ebp + 0xc], 2
jne 0x4189dd
push dword [ebp - 0x10]
lea eax, [esi + 0x208]
push edi
push eax
call fcn.0041c2a8
mov ebx, eax
test ebx, ebx
jns 0x418aac
push 0x4423d0
jmp 0x418ce0
cmp dword [edi + 0x18], 0
je 0x4189f5
cmp dword [ebp - 8], 0x80000000
jne 0x4189f5
mov eax, dword [esi + 0x24c]
mov dword [ebp - 8], eax
lea eax, [ebp - 0x20]
push eax
push dword [esi + 0x128]
lea eax, [esi + 0x78]
push eax
lea eax, [esi + 0x1f0]
push eax
push edi
lea eax, [esi + 0x208]
push eax
lea eax, [esi + 0xa8]
push eax
push dword [esi + 0x20]
push dword [esi + 0xe8]
call fcn.0041c668
mov ebx, eax
test ebx, ebx
js 0x418b93
cmp dword [edi + 0x18], 0
je 0x418aac
cmp dword [ebp - 4], 0x80000000
jne 0x418a4a
mov eax, dword [esi + 0x244]
dec eax
mov dword [ebp - 4], eax
mov eax, dword [esi + 0x244]
mov dword [ebp - 0xc], eax
mov eax, dword [esi + 0x24c]
mov dword [ebp - 0x18], eax
jmp 0x418aac
cmp dword [ebp + 0xc], 2
je 0x418aac
push dword [esi + 0x128]
lea eax, [esi + 0x208]
push eax
push edi
push dword [esi + 0xe8]
push 0
call fcn.004281e0
mov ebx, eax
test ebx, ebx
js 0x418b9d
push dword [esi + 0x128]
lea eax, [esi + 0x208]
push eax
push edi
push dword [esi + 0xe8]
call fcn.004279b8
mov ebx, eax
test ebx, ebx
js 0x418ba6
xor eax, eax
cmp dword [edi + 0x5c], eax
jne 0x418abd
cmp dword [edi + 0x60], eax
jne 0x418abd
cmp dword [edi + 0x64], eax
je 0x418ad3
lea eax, [esi + 0x208]
push eax
call fcn.0041b9f2
mov ebx, eax
test ebx, ebx
js 0x418bbb
push dword [edi + 0x60]
mov eax, dword [esi + 0xb8]
push dword [edi + 0x5c]
mov ecx, dword [eax]
push dword [edi + 0x50]
push dword [edi + 0x40]
push ebx
push dword [edi]
push eax
call dword [ecx + 0x4c]
inc dword [ebp + 8]
mov eax, dword [ebp + 8]
cmp eax, dword [esi + 0x1c4]
jb 0x4188d6
mov edi, SysReAllocString
cmp dword [esi + 0xf0], 0
jne 0x418bc5
cmp dword [ebp + 0xc], 4
je 0x418b28
cmp dword [ebp + 0xc], 5
je 0x418b28
cmp dword [ebp + 0xc], 6
jne 0x418bc5
cmp dword [ebp - 4], edi
jne 0x418b3f
mov eax, dword [esi + 0x244]
mov dword [ebp - 4], eax
mov eax, dword [esi + 0x24c]
mov dword [ebp - 8], eax
push dword [ebp - 8]
lea eax, [esi + 0x208]
push dword [ebp - 4]
push eax
call fcn.0041adbe
mov ebx, eax
test ebx, ebx
jns 0x418c04
push 0x4423a6
jmp 0x418ce0
push 0x44237a
jmp 0x418ce0
push 0x442354
jmp 0x418ce0
push ebx
push 0x1a1
push 0x441952
call fcn.004315c0
push 0x442334
jmp 0x418ce0
push 0x442314
jmp 0x418ce0
push dword [edi]
push 0x4422d6
jmp 0x418bad
push dword [edi]
push 0x44229a
push ebx
call fcn.00430a6a
add esp, 0xc
jmp 0x418d06
push 0x442274
jmp 0x418ce0
cmp dword [ebp + 0xc], 3
jne 0x418c04
cmp dword [ebp - 0xc], edi
jne 0x418be2
mov eax, dword [esi + 0x244]
mov dword [ebp - 0xc], eax
mov eax, dword [esi + 0x24c]
mov dword [ebp - 0x18], eax
push dword [ebp - 0x18]
lea eax, [esi + 0x208]
push dword [ebp - 0xc]
push eax
call fcn.0041ae3c
mov ebx, eax
test ebx, ebx
jns 0x418c04
push 0x442246
jmp 0x418ce0
cmp dword [ebp - 0x1c], 0
je 0x418c26
lea eax, [esi + 0x208]
push eax
call fcn.0041b9f2
mov ebx, eax
test ebx, ebx
jns 0x418c26
push 0x44221e
jmp 0x418ce0
lea edi, [esi + 0x208]
push edi
call fcn.0041bda8
mov ebx, eax
test ebx, ebx
jns 0x418c42
push 0x4421ee
jmp 0x418ce0
and dword [ebp + 8], 0
cmp dword [esi + 0x1c4], 0
jbe 0x418c8e
cmp dword [ebp + 0xc], 3
jne 0x418c61
mov eax, dword [esi + 0x1c4]
sub eax, dword [ebp + 8]
dec eax
jmp 0x418c64
mov eax, dword [ebp + 8]
imul eax, eax, 0xc8
add eax, dword [esi + 0x1c0]
push eax
push edi
push dword [ebp + 0xc]
call fcn.0041abcc
mov ebx, eax
test ebx, ebx
js 0x418cea
inc dword [ebp + 8]
mov eax, dword [ebp + 8]
cmp eax, dword [esi + 0x1c4]
jb 0x418c4f
cmp dword [ebp + 0xc], 2
je 0x418cf1
push dword [ebp - 0x28]
lea eax, [ebp - 0x20]
push eax
push dword [esi + 0x128]
lea eax, [esi + 0x78]
push eax
lea eax, [esi + 0x1f0]
push eax
push edi
push dword [esi + 0x124]
lea eax, [esi + 0x198]
push dword [esi + 0x120]
push eax
lea eax, [esi + 0xa8]
push eax
push dword [ebp + 0xc]
push dword [esi + 0xe8]
call fcn.0041b72e
mov ebx, eax
test ebx, ebx
jns 0x418cf1
push 0x4421ce
push ebx
call fcn.00430a6a
pop ecx
pop ecx
jmp 0x418d06
push 0x4421b0
jmp 0x418ce0
push dword [ebp + 0xc]
lea eax, [esi + 0x1b8]
lea edi, [esi + 0x198]
push eax
call fcn.00418000
cmp dword [ebp - 0x24], 0
je 0x418d18
lea eax, [esi + 0xa8]
push eax
call fcn.00416992
mov esi, dword [esi + 0xb8]
mov eax, dword [esi]
push ebx
push esi
call dword [eax + 0x50]
push ebx
push 0x2000012b
push 1
call fcn.0040bfb2
add esp, 0xc
cmp dword [ebp - 0x10], 0
je 0x418d43
push dword [ebp - 0x10]
call fcn.0042eb62
pop edi
pop esi
mov eax, ebx
pop ebx
leave
ret 8