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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push esi
mov esi, dword [ebp + 8]
push edi
mov edi, dword [ebp + 0x28]
mov dword [ebp - 4], edi
cmp byte [esi + 0x49], 4
mov edx, dword [esi]
mov dword [ebp - 8], 0
mov dword [ebp + 8], edx
mov eax, dword [edx + 4]
mov dword [ebp - 0xc], eax
jne 0x44e052
mov eax, dword [esi + 0x44]
pop edi
pop esi
mov esp, ebp
pop ebp
ret
mov eax, dword [eax + 8]
mov ecx, dword [esi + 0x3c]
test eax, eax
je 0x44e090
nop dword [eax]
cmp eax, esi
je 0x44e06d
test ecx, ecx
je 0x44e076
cmp dword [eax + 0x3c], ecx
je 0x44e076
mov eax, dword [eax + 8]
test eax, eax
jne 0x44e060
jmp 0x44e090
test eax, eax
je 0x44e090
push esi
push ecx
push eax
call fcn.00447400
add esp, 0xc
test eax, eax
jne 0x44e22d
mov edx, dword [ebp + 8]
cmp dword [esi + 0x10], 0
push ebx
mov ebx, dword [ebp + 0x14]
jne 0x44e0ec
mov eax, dword [edx + 4]
mov eax, dword [eax + 8]
test eax, eax
je 0x44e0c2
mov ecx, dword [ebp + 0x10]
test byte [eax + 0x48], 0x10
je 0x44e0bb
cmp dword [eax + 0x18], ecx
jne 0x44e0bb
cmp dword [eax + 0x1c], ebx
jne 0x44e0bb
mov byte [eax + 0x49], 0
mov eax, dword [eax + 8]
test eax, eax
jne 0x44e0a7
test byte [esi + 0x48], 2
mov eax, dword [ebp + 0x10]
je 0x44e0ef
test ebx, ebx
jl 0x44e0ef
jg 0x44e0d5
test eax, eax
je 0x44e0ef
sub eax, 1
mov ecx, ebx
sbb ecx, 0
cmp dword [esi + 0x18], eax
jne 0x44e0ec
cmp dword [esi + 0x1c], ecx
jne 0x44e0ec
or edi, 0xffffffff
jmp 0x44e113
mov eax, dword [ebp + 0x10]
test edi, edi
jne 0x44e116
lea ecx, [ebp - 4]
push ecx
push dword [ebp + 0x24]
push ebx
push eax
push dword [ebp + 0xc]
push esi
call fcn.0042c720
add esp, 0x18
test eax, eax
jne 0x44e22c
mov edi, dword [ebp - 4]
mov dword [ebp + 0x28], edi
movsx eax, word [esi + 0x4c]
lea ecx, [ebp - 8]
push ecx
push dword [ebp + 0x20]
mov ecx, dword [ebp + 0x10]
push dword [ebp + 0x1c]
mov edi, dword [esi + eax*4 + 0x78]
push dword [ebp + 0x18]
mov eax, dword [ebp - 0xc]
push ebx
push ecx
push dword [ebp + 0xc]
mov eax, dword [eax + 0x50]
push eax
push edi
mov dword [ebp - 4], eax
call fcn.004363c0
mov ecx, eax
add esp, 0x24
mov dword [ebp + 8], ecx
test ecx, ecx
jne 0x44e22a
movsx eax, word [esi + 0x4c]
movzx edx, word [esi + eax*2 + 0x4e]
lea ecx, [esi + eax*2]
mov eax, dword [ebp + 0x28]
mov ebx, edx
test eax, eax
jne 0x44e1ce
push dword [edi + 0x44]
call fcn.00462be0
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e22a
mov eax, dword [edi + 0x40]
movzx ecx, byte [eax + ebx*2]
movzx eax, byte [eax + ebx*2 + 1]
shl ecx, 8
or ecx, eax
movzx eax, word [edi + 0x14]
and ecx, eax
add ecx, dword [edi + 0x38]
cmp byte [edi + 5], 0
jne 0x44e1a4
mov edx, dword [ebp - 4]
mov eax, dword [ecx]
mov dword [edx], eax
lea eax, [ebp + 0x28]
push eax
push ecx
push edi
call fcn.0042dd40
mov dword [ebp + 8], eax
lea eax, [ebp + 8]
push eax
movzx eax, word [ebp + 0x28]
push eax
push ebx
push edi
call fcn.00433c30
mov ecx, dword [ebp + 8]
add esp, 0x1c
test ecx, ecx
jne 0x44e22a
jmp 0x44e1e1
jns 0x44e1e1
cmp word [edi + 0x12], 0
jbe 0x44e1e1
lea eax, [edx + 1]
mov word [ecx + 0x4e], ax
movzx ebx, ax
lea eax, [ebp + 8]
push eax
push 0
push 0
push dword [ebp - 8]
push dword [ebp - 4]
push ebx
push edi
call fcn.0043b850
mov ecx, dword [ebp + 8]
xor eax, eax
add esp, 0x1c
mov word [esi + 0x2c], ax
test ecx, ecx
jne 0x44e22a
cmp byte [edi + 1], al
je 0x44e22a
and byte [esi + 0x48], 0xfd
push esi
call fcn.0042a1c0
mov ecx, eax
add esp, 4
movsx eax, word [esi + 0x4c]
mov eax, dword [esi + eax*4 + 0x78]
mov byte [eax + 1], 0
mov byte [esi + 0x49], 0
mov eax, ecx
pop ebx
pop edi
pop esi
mov esp, ebp
pop ebp
ret