Function at 0x601230
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 0x60125f
lea ebx, [ebx]
mov dword [esp + 0x60], eax
mov eax, dword [eax + 0x20]
cmp eax, ebp
jne 0x601250
mov esi, dword [esp + 0x60]
push esi
push edi
call fcn.006014d0
add esp, 8
test eax, eax
jne 0x6014bf
push ebp
push esi
push edi
call fcn.00602e30
add esp, 0xc
test eax, eax
jne 0x6014bf
push 0x50
push ebx
call fcn.005f2240
mov edi, eax
add esp, 8
cmp edi, ebp
mov dword [esp + 0x18], edi
je 0x6014bf
mov eax, dword [esp + 0x5c]
cmp eax, ebp
mov dword [edi + 0x1c], 1
je 0x6012b8
push eax
push ebx
call fcn.005f2070
add esp, 8
jmp 0x6012ba
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.005f2240
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 0x60149b
add eax, 0x12
mov dword [esp + 0x1c], eax
mov dword [esp + 0x14], ebp
jmp 0x601300
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 0x601323
push eax
push ebx
call fcn.005f2070
add esp, 8
jmp 0x601370
cmp byte [ecx], 0x70
jne 0x601346
mov eax, dword [ecx + 0xc]
test eax, eax
je 0x601346
mov edx, dword [eax + 0x14]
add eax, 0x14
test edx, edx
je 0x601346
cmp byte [edx], 0
je 0x601346
push eax
push 0x70fbf4
jmp 0x601367
lea eax, [ecx + 0x1c]
mov ecx, dword [eax]
test ecx, ecx
je 0x60135c
cmp byte [ecx], 0
je 0x60135c
push eax
push 0x70fbf4
jmp 0x601367
mov eax, dword [esp + 0x10]
inc eax
push eax
push str.column_d
push ebx
call fcn.005fdcd0
add esp, 0xc
mov esi, eax
test esi, esi
je 0x6014ac
mov al, byte [ebx + 0x1e]
test al, al
jne 0x6014ac
push esi
call fcn.005dfe70
mov eax, esi
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x601393
sub eax, edx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x14]
xor ebp, ebp
xor edi, edi
test eax, eax
jle 0x6013f2
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.005dff40
add esp, 8
test eax, eax
jne 0x6013e9
mov ecx, dword [esp + 0x28]
inc ebp
push ebp
push esi
push str._z:_d
push ebx
mov byte [ecx + esi], al
call fcn.005fdcd0
mov esi, eax
add esp, 0x10
or edi, 0xffffffff
test esi, esi
je 0x6013f2
mov eax, dword [esp + 0x10]
inc edi
cmp edi, eax
jl 0x6013b0
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.00600cf0
push eax
push ebx
call fcn.005f2070
push esi
mov dword [edi - 0xa], eax
call fcn.006043f0
mov byte [edi], al
mov eax, dword [esp + 0x78]
push esi
push eax
call fcn.00604470
add esp, 0x28
test eax, eax
je 0x60146f
mov ecx, dword [eax]
push ecx
push ebx
call fcn.005f2070
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 0x6012fa
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.005dd690
push edi
call fcn.005eb5c0
add esp, 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x44
ret