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

Disassembly:
sub esp, 0x68
push ebx
push ebp
mov ebp, dword [esp + 0x78]
push esi
mov esi, edx
lea edx, [eax + ebp]
mov eax, dword [esp + 0x78]
push edi
mov dword [esp + 0x80], eax
add eax, ecx
mov ecx, dword [esi + 0x2850]
mov dword [esp + 0x24], edx
sub edx, ebp
push edx
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x2854]
add eax, ecx
push ebp
mov dword [esp + 0x1c], ecx
mov ecx, dword [esi + 0x2814]
lea ebx, [esi + 0x1004]
push ebx
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x2810]
lea edi, [esi + 0x1808]
mov dword [esp + 0x3c], ecx
push edi
lea ecx, [esp + 0x2c]
mov dword [esp + 0x44], eax
mov eax, dword [esi + 0x2818]
push esi
push ecx
lea edx, [esp + 0x38]
lea ecx, [esp + 0x40]
mov dword [esp + 0x44], eax
call fcn.0044e950
add esp, 0x18
cmp eax, 0xffffff88
ja 0x44f226
lea edx, [eax + ebp]
mov ebp, dword [esp + 0x20]
xor eax, eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x70], eax
add eax, ebp
mov ecx, 4
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x6c], ecx
sub eax, edx
lea ecx, [esp + 0x44]
call fcn.0044ce90
cmp eax, 0xffffff88
jbe 0x44f09b
mov eax, 0xffffffec
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
mov ebp, dword [esp + 0x48]
movzx edx, word [esi]
mov eax, dword [esp + 0x44]
mov ecx, ebp
and ecx, 0x1f
shl eax, cl
or ecx, 0xffffffff
sub ecx, edx
and ecx, 0x1f
shr eax, 1
shr eax, cl
add ebp, edx
lea ecx, [esp + 0x44]
mov dword [esp + 0x48], ebp
mov dword [esp + 0x54], eax
call fcn.0044cf80
movzx edx, word [ebx]
mov eax, dword [esp + 0x44]
add esi, 4
mov dword [esp + 0x58], esi
mov esi, dword [esp + 0x48]
mov ecx, esi
and ecx, 0x1f
shl eax, cl
or ecx, 0xffffffff
sub ecx, edx
and ecx, 0x1f
shr eax, 1
shr eax, cl
add esi, edx
lea ecx, [esp + 0x44]
mov dword [esp + 0x48], esi
mov dword [esp + 0x5c], eax
call fcn.0044cf80
mov esi, dword [esp + 0x48]
movzx edx, word [edi]
mov eax, dword [esp + 0x44]
mov ecx, esi
and ecx, 0x1f
shl eax, cl
or ecx, 0xffffffff
sub ecx, edx
and ecx, 0x1f
shr eax, 1
shr eax, cl
add esi, edx
add ebx, 4
lea ecx, [esp + 0x44]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x48], esi
mov dword [esp + 0x64], eax
call fcn.0044cf80
add edi, 4
mov dword [esp + 0x68], edi
call fcn.0044cf80
cmp eax, 2
jg 0x44f1c5
mov edi, dword [esp + 0x28]
test edi, edi
je 0x44f1c5
lea edx, [esp + 0x38]
push edx
lea esi, [esp + 0x48]
dec edi
call fcn.0044ec20
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x38]
add esp, 4
push eax
mov eax, dword [esp + 0x14]
push ecx
push edx
mov edx, dword [esp + 0x44]
push eax
lea ecx, [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x50]
sub esp, 0xc
mov eax, esp
mov dword [eax], edx
mov edx, dword [esp + 0x60]
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov eax, dword [esp + 0x38]
push eax
mov eax, dword [esp + 0xa4]
call fcn.0044ee00
add esp, 0x24
cmp eax, 0xffffff88
ja 0x44f226
add dword [esp + 0x80], eax
mov ecx, esi
call fcn.0044cf80
cmp eax, 2
jle 0x44f151
mov ecx, dword [esp + 0x4c]
cmp ecx, dword [esp + 0x50]
jne 0x44f08e
cmp dword [esp + 0x48], 0x20
jne 0x44f08e
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov esi, ecx
sub esi, eax
cmp eax, ecx
ja 0x44f08e
mov edi, dword [esp + 0x80]
lea edx, [esi + edi]
cmp edx, dword [esp + 0x18]
jbe 0x44f20f
mov eax, 0xffffffba
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
cmp edi, eax
je 0x44f21e
push esi
push eax
push edi
call fcn.005e4a20
add esp, 0xc
mov eax, esi
sub eax, dword [esp + 0x7c]
add eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret