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

Disassembly:
mov ebx, dword [esp + 0x24]
xor ebp, ebp
cmp edi, dword [esp + 0x80]
jg 0x44f680
mov eax, dword [esp + 0x28]
cmp ebx, eax
jge 0x44f3f3
sub ebx, eax
mov eax, dword [esp + 0x58]
add ebx, eax
push ebx
mov ecx, esi
call fcn.0044df04
push eax
push edi
mov ecx, esi
call fcn.0044e2d4
mov ebp, eax
mov eax, dword [esp + 0x78]
cmp ebp, eax
jl 0x44f667
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x14], 0
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x54]
cmp eax, 1
mov dword [esp + 0x18], edi
mov dword [esp + 0x20], ebp
jne 0x44f4fd
lea ecx, [esp + 0x74]
lea edx, [esp + 0x14]
push ecx
lea eax, [esp + 0x18]
push edx
push eax
call dword [0x46d440]
lea ecx, [esp + 0x14]
push ecx
call dword [0x46d400]
test eax, eax
jne 0x44f667
lea edx, [esp + 0x174]
lea ecx, [esp + 0xbc]
push edx
call 0x488598
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
sub eax, edx
sub ecx, edi
push 0xf00021
push eax
mov eax, dword [esp + 0xc8]
push ecx
push edx
push edi
push eax
call dword [0x46d0a4]
mov edx, dword [esp + 0xc4]
lea ecx, [esp + 0x14]
push 2
push ecx
push edx
call dword [0x46d0e4]
lea eax, [esp + 0x14]
push eax
call dword [0x46d144]
push eax
lea ecx, [esp + 0x4c]
call 0x488f44
mov edi, dword [esp + 0x4c]
lea eax, [esp + 0x48]
mov edx, dword [esp + 0x6c]
lea ecx, [esp + 0x68]
neg eax
sbb eax, eax
push 4
and eax, edi
neg ecx
sbb ecx, ecx
push eax
and ecx, edx
push ecx
push edx
call dword [0x46d0b0]
lea ecx, [esp + 0x48]
call 0x488f9b
jmp 0x44f667
mov edx, dword [esp + 0xc4]
lea ecx, [esp + 0x30]
push 1
push ecx
push edx
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], edi
call dword [0x46d0e4]
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0xc4]
inc eax
push 1
mov dword [esp + 0x38], eax
lea eax, [esp + 0x34]
push eax
push ecx
call dword [0x46d0e8]
lea edx, [esp + 0x138]
lea ecx, [esp + 0xbc]
mov word [esp + edi*4], fs
add byte [eax], al
add byte [edx - 0x18], dl
dec eax
nop
add eax, dword [eax]
mov eax, dword [esp + 0x34]
lea ecx, [esp + 0x230]
push eax
push 0
push ecx
lea ecx, [esp + 0xc8]
call 0x488a89
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x3c]
push edx
push eax
lea ecx, [esp + 0xc4]
call 0x488ad5
lea ecx, [esp + 0x110]
adc byte [ecx], al
add byte [eax], al
push ecx
lea ecx, [esp + 0xc0]
call 0x488598
mov edx, dword [esp + 0x3c]
push ebp
push edx
lea ecx, [esp + 0xc4]
call 0x488ad5
push ebp
push 0
lea ecx, [esp + 0xc4]
call 0x488ad5
push edi
push 0
lea ecx, [esp + 0xc4]
call 0x488ad5
inc ebx
lea eax, [esp + 0x248]
push ebx
push 0x54bd14
push eax
call dword [0x46d3e0]
lea ecx, [esp + 0x9c]
add esp, 0xc
test ecx, ecx
je 0x44f602
mov eax, dword [esp + 0x94]
test eax, eax
je 0x44f602
mov edx, dword [esp + 0xc0]
push eax
push edx
call dword [0x46d098]
push 0
lea ecx, [esp + 0xc0]
call 0x48872c
lea eax, [esp + 0x248]
lea ecx, [esp + 0x158]
push eax
call 0x48236b
mov eax, dword [esp + 0x158]
lea edx, [esp + 0x14]
push 0x825
push edx
mov ecx, dword [eax - 8]
mov byte [esp + 0x28c], 0x12
push ecx
push eax
mov eax, dword [esp + 0xcc]
lea ecx, [esp + 0xcc]
call dword [eax + 0x68]
lea ecx, [esp + 0x158]
mov byte [esp + 0x284], 0x10
call 0x4822fd
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x64]
inc eax
mov edi, ebp
cmp eax, ecx
mov dword [esp + 0x24], eax
jl 0x44f3d0
xor ebp, ebp
mov ebx, dword [esp + 0x40]
jmp 0x44f7fe
push 0xffffffffffffffff
push ebp
lea ecx, [esp + 0x16c]
mov dword [esp + 0x90], ebx