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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4ee1f7
sub esp, 0x5c
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x94]
cmp eax, ecx
jne 0x4ee1de
mov ebx, dword [esp + 0x7c]
cmp ebx, ecx
jne 0x4ee1de
mov ebp, dword [esp + 0x88]
cmp ebp, ecx
jne 0x4ee1de
shl ecx, 1
mov edx, dword [esp + 0x68]
cmp edx, ecx
jl 0x4ede7d
jb 0x4ee1d9
mov edi, dword [esp + 0x60]
jmp 0x4edee1
cmp ecx, 1
jne 0x4edeb2
lea eax, [0x5310e0]
mov dword [esp], eax
mov dword [esp + 4], 1
mov dword [esp + 8], 1
call fcn.00446320
mov eax, dword [esp + 0xc]
mov edx, 1
mov ecx, 1
mov edi, eax
jmp 0x4edee1
mov dword [esp + 0x30], ecx
lea eax, [0x5310e0]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [ecx + 4]
mov dword [esp + 0x2c], eax
mov dword [esp + 8], eax
call fcn.00446320
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x30]
mov edi, eax
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x54], edi
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call fcn.004ed660
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov edx, dword [esp + 0x94]
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x54]
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x4c], eax
xor eax, eax
mov dword [esp + 0x34], eax
xor eax, eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x4c]
jmp 0x4edf66
mov ecx, dword [esp + 0x34]
inc ecx
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x94]
mov edx, esi
mov ebx, dword [esp + 0x70]
mov ebp, edi
mov esi, dword [esp + 0x6c]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x7c]
mov ebx, dword [esp + 0x34]
cmp edx, ebx
jle 0x4ee094
cmp ecx, ebx
jbe 0x4ee1d2
mov esi, dword [eax + ebx*4]
mov dword [esp + 0x38], esi
lea esi, [ebx + edx]
cmp edi, esi
jb 0x4ee1c9
cmp ebx, esi
ja 0x4ee1c0
mov dword [esp + 0x48], esi
mov eax, ebx
shl ebx, 2
sub edi, eax
mov dword [esp + 0x44], edi
mov esi, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and ebx, edi
add ebx, ebp
mov dword [esp + 0x58], ebx
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], esi
mov edi, dword [esp + 0x6c]
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x70]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0x74]
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x18], edi
call fcn.004f6ec0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x28]
cmp ecx, edx
jae 0x4ee1b7
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x54]
mov edx, dword [eax + ecx*4]
mov ebx, dword [esp + 0x58]
mov dword [esp], ebx
mov ebx, dword [esp + 0x94]
mov dword [esp + 4], ebx
mov ebp, dword [esp + 0x44]
mov dword [esp + 8], ebp
mov ebp, dword [esp + 0x84]
mov dword [esp + 0xc], ebp
mov esi, dword [esp + 0x88]
mov dword [esp + 0x10], esi
mov edi, dword [esp + 0x8c]
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0x90]
imul edx, edi
mov dword [esp + 0x18], edx
call fcn.004f6ec0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
add edx, ecx
lea ebx, [edx + eax]
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x48]
cmp ebp, esi
jbe 0x4ee1ae
mov edi, dword [esp + 0x54]
mov dword [edi + esi*4], ebx
cmp ecx, edx
ja 0x4ee083
cmp eax, ebx
jbe 0x4ee08d
mov eax, 1
jmp 0x4edf32
xor eax, eax
jmp 0x4edf32
mov ebx, dword [esp + 0x40]
test ebx, ebx
je 0x4ee116
cmp edx, edi
ja 0x4ee1a5
mov ecx, dword [esp + 0x28]
cmp edx, ecx
ja 0x4ee19e
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], edi
sub edi, edx
mov ebx, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
mov esi, edx
shl edx, 2
sar edi, 0x1f
and edx, edi
add edx, ebp
mov dword [esp + 0xc], edx
sub ecx, esi
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], ebx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x20], ecx
call fcn.004f6d40
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x94]
mov ebp, dword [esp + 0x54]
jmp 0x4ee168
cmp edx, edi
ja 0x4ee195
mov ecx, dword [esp + 0x28]
cmp edx, ecx
ja 0x4ee18e
mov eax, edi
sub edi, edx
xchg edi, ebx
neg ebx
xchg edi, ebx
mov ebx, edx
shl edx, 2
sar edi, 0x1f
and edx, edi
sub ecx, ebx
lea esi, [ebp + edx]
cmp ebx, ecx
jg 0x4ee142
mov ecx, ebx
test edx, edx
je 0x4ee168
mov dword [esp], ebp
mov dword [esp + 4], esi
shl ecx, 2
mov dword [esp + 8], ecx
call fcn.0045d2d0
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x94]
mov ebp, dword [esp + 0x54]
cmp ebx, eax
ja 0x4ee185
mov dword [esp + 0x98], ebp
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], eax
add esp, 0x5c
ret
mov ecx, ebx
mov edx, eax
call fcn.0045ca40
mov eax, edx
call fcn.0045ca60
mov ecx, edx
mov edx, edi
call fcn.0045ca40
mov eax, edx
call fcn.0045ca60
mov ecx, edx
mov edx, edi
call fcn.0045ca40
mov eax, esi
mov ecx, ebp
call fcn.0045ca00
mov eax, ecx
mov ecx, edx
call fcn.0045ca00
mov eax, ebx
mov ecx, esi
call fcn.0045ca60
mov ecx, esi
mov edx, edi
call fcn.0045ca40
mov eax, ebx
call fcn.0045ca00
call fcn.0045ca40
lea eax, [0x5315e0]
mov dword [esp], eax
lea eax, [0x586b98]
mov dword [esp + 4], eax
call fcn.00432520
nop
call fcn.0045b540
jmp fcn.004ede20