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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x506324
sub esp, 0x4c
mov eax, dword [esp + 0x60]
mov ecx, dword [esp + 0x6c]
cmp eax, ecx
jl 0x50626a
test eax, eax
je 0x50624e
test ecx, ecx
je 0x50618f
lea ebx, [eax + 1]
mov dword [esp + 0x40], ebx
mov edx, dword [esp + 0x58]
cmp edx, ebx
jl 0x506084
jb 0x50631c
mov ebp, dword [esp + 0x50]
jmp 0x5060b7
lea ecx, [0x60c2c0]
mov dword [esp], ecx
mov dword [esp + 4], ebx
lea ecx, [eax + 5]
mov dword [esp + 0x30], ecx
mov dword [esp + 8], ecx
call fcn.00447cc0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x6c]
mov ebx, dword [esp + 0x40]
mov edx, dword [esp + 0x30]
mov ebp, eax
mov eax, dword [esp + 0x60]
cmp ecx, edx
ja 0x506317
mov dword [esp + 0x30], edx
mov dword [esp + 0x44], ebp
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x64]
mov dword [esp + 0x14], ebx
mov esi, dword [esp + 0x68]
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], ecx
mov esi, dword [esp + 0x70]
mov dword [esp + 0x20], esi
call fcn.0050feb0
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x6c]
cmp ecx, edx
jle 0x506174
mov ebx, dword [esp + 0x30]
cmp ecx, ebx
ja 0x506310
sub ebx, edx
mov esi, edx
shl edx, 2
mov edi, ebx
neg ebx
sar ebx, 0x1f
and ebx, edx
mov ebp, dword [esp + 0x44]
add ebx, ebp
mov dword [esp], ebx
sub ecx, esi
mov dword [esp + 4], ecx
mov dword [esp + 8], edi
mov edi, dword [esp + 0x64]
sub edi, esi
mov esi, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, edx
mov edx, dword [esp + 0x5c]
add edx, edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], eax
call fcn.0050ff30
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x60]
mov ebx, dword [esp + 0x40]
cmp ecx, ebx
jae 0x506307
mov ebp, dword [esp + 0x44]
mov dword [ebp + ecx*4], eax
mov eax, ebx
jmp 0x5062cc
mov ecx, dword [esp + 0x58]
cmp eax, ecx
jg 0x50619f
mov edx, eax
mov ebx, dword [esp + 0x50]
jmp 0x506205
cmp eax, 1
jne 0x5061d8
lea eax, [0x60c2c0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00447cc0
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x60]
mov ebx, eax
mov ecx, 1
mov eax, 1
jmp 0x506205
lea ecx, [0x60c2c0]
mov dword [esp], ecx
mov dword [esp + 4], eax
lea ecx, [eax + 4]
mov dword [esp + 0x34], ecx
mov dword [esp + 8], ecx
call fcn.00447cc0
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x60]
mov ebx, eax
mov ecx, dword [esp + 0x34]
mov eax, edx
cmp edx, eax
jl 0x50620b
mov edx, eax
mov ebp, dword [esp + 0x5c]
cmp ebp, ebx
je 0x50623e
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x48], ebx
mov dword [esp], ebx
mov dword [esp + 4], ebp
shl edx, 2
mov dword [esp + 8], edx
call fcn.0045f2b0
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
add esp, 0x4c
ret
mov eax, dword [esp + 0x50]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], 0
mov eax, dword [esp + 0x58]
mov dword [esp + 0x7c], eax
add esp, 0x4c
ret
mov edx, dword [esp + 0x50]
mov dword [esp], edx
mov edx, dword [esp + 0x54]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x20], eax
call fcn.00506030
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], edx
add esp, 0x4c
ret
mov ebx, esi
test ebx, ebx
jle 0x5062df
lea esi, [ebx - 1]
cmp esi, eax
jae 0x5062fe
mov edi, dword [ebp + ebx*4 - 4]
test edi, edi
je 0x5062ca
mov edx, dword [esp + 0x30]
cmp ebx, edx
ja 0x5062f7
mov dword [esp + 0x74], ebp
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], edx
add esp, 0x4c
ret
mov ecx, ebx
call fcn.0045ea00
mov ecx, eax
mov eax, esi
call fcn.0045e9c0
mov eax, ecx
mov ecx, ebx
call fcn.0045e9c0
mov edx, ebx
call fcn.0045ea00
call fcn.0045ea00
mov ecx, ebx
call fcn.0045ea00
nop
call fcn.0045d530
jmp fcn.00506030