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

Disassembly:
sub esp, 0x44
push ebx
push ebp
push esi
mov esi, dword [esp + 0x5c]
mov eax, dword [esi + 0x20]
push edi
mov edi, dword [esp + 0x58]
mov ebx, dword [edi]
xor ebp, ebp
cmp eax, ebp
je 0x43f13f
lea ebx, [ebx]
mov dword [esp + 0x60], eax
mov eax, dword [eax + 0x20]
cmp eax, ebp
jne 0x43f130
mov esi, dword [esp + 0x60]
push esi
push edi
call fcn.0043f3b0
add esp, 8
test eax, eax
jne 0x43f39f
push ebp
push esi
push edi
call fcn.00440bb0
add esp, 0xc
test eax, eax
jne 0x43f39f
push 0x50
push ebx
call fcn.00420850
mov edi, eax
add esp, 8
cmp edi, ebp
mov dword [esp + 0x18], edi
je 0x43f39f
mov eax, dword [esp + 0x5c]
cmp eax, ebp
mov dword [edi + 0x1c], 1
je 0x43f198
push eax
push ebx
call fcn.00420690
add esp, 8
jmp 0x43f19a
xor eax, eax
mov dword [edi], eax
mov esi, dword [esi]
mov eax, dword [esi]
mov dword [edi + 4], eax
lea eax, [eax + eax*4]
shl eax, 2
push eax
push ebx
mov dword [esp + 0x28], esi
call fcn.00420850
mov ecx, dword [edi + 4]
add esp, 8
cmp ecx, ebp
mov dword [esp + 0x24], eax
mov dword [edi + 8], eax
mov dword [esp + 0x10], ebp
jle 0x43f37b
add eax, 0x12
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], ebp
jmp 0x43f1e0
mov esi, dword [esp + 0x20]
mov edi, edi
mov ecx, dword [esi + 0xc]
mov edx, dword [esp + 0x14]
lea eax, [edx + ecx]
mov ecx, dword [eax]
mov eax, dword [eax + 4]
test eax, eax
mov dword [esp + 0x2c], ecx
je 0x43f203
push eax
push ebx
call fcn.00420690
add esp, 8
jmp 0x43f250
cmp byte [ecx], 0x70
jne 0x43f226
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x43f226
mov edx, dword [eax + 0x14]
add eax, 0x14
test edx, edx
je 0x43f226
cmp byte [edx], 0
je 0x43f226
push eax
push 0x45d72c
jmp 0x43f247
lea eax, [ecx + 0x1c]
mov ecx, dword [eax]
test ecx, ecx
je 0x43f23c
cmp byte [ecx], 0
je 0x43f23c
push eax
push 0x45d72c
jmp 0x43f247
mov eax, dword [esp + 0x10]
inc eax
push eax
push str.column_d
push ebx
call fcn.00417be0
add esp, 0xc
mov esi, eax
test esi, esi
je 0x43f38c
mov al, byte [ebx + 0x1e]
test al, al
jne 0x43f38c
push esi
call fcn.0041be60
mov eax, esi
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x43f273
sub eax, edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x14]
xor ebp, ebp
xor edi, edi
test eax, eax
jle 0x43f2d2
lea esp, [esp]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edi*4]
mov eax, dword [edx + ecx*4]
push esi
push eax
call fcn.0041bf30
add esp, 8
test eax, eax
jne 0x43f2c9
mov ecx, dword [esp + 0x28]
inc ebp
push ebp
push esi
push str._z:_d
push ebx
mov byte [ecx + esi], al
call fcn.00417be0
mov esi, eax
add esp, 0x10
or edi, 0xffffffff
test esi, esi
je 0x43f2d2
mov eax, dword [esp + 0x10]
inc edi
cmp edi, eax
jl 0x43f290
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x60]
xor edx, edx
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x40], edx
mov dword [esp + 0x44], edx
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], edx
push edx
push edx
mov dword [edi - 0x12], esi
mov esi, dword [esp + 0x34]
mov ecx, dword [eax + 0xc]
push edx
mov dword [esp + 0x5c], edx
lea edx, [esp + 0x3c]
push esi
push edx
mov dword [esp + 0x48], ecx
call fcn.0043ec20
push eax
push ebx
call fcn.00420690
push esi
mov dword [edi - 0xa], eax
call fcn.00442330
mov byte [edi], al
mov eax, dword [esp + 0x78]
push esi
push eax
call fcn.004423c0
add esp, 0x28
test eax, eax
je 0x43f34f
mov ecx, dword [eax]
push ecx
push ebx
call fcn.00420690
add esp, 8
mov dword [edi - 6], eax
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x14]
mov ecx, dword [edx + 4]
add edi, 0x14
inc eax
add esi, 0xc
cmp eax, ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], esi
mov edi, edx
jl 0x43f1da
mov dword [edi + 0xc], 0xffffffff
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
push esi
mov byte [ebx + 0x1e], 1
call fcn.00417f90
push edi
call fcn.0042e9d0
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x44
ret