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

Disassembly:
sub esp, 0x7c
push ebx
push ebp
push esi
mov esi, dword [esp + 0xa0]
xor ebp, ebp
xor eax, eax
cmp esi, ebp
push edi
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
jne 0x44c206
lea esi, [esp + 0x48]
mov ebx, dword [esp + 0x90]
mov ecx, 6
xor eax, eax
lea edi, [esp + 0x5c]
mov dword [esi + 4], ebp
mov dword [esi], ebp
mov dword [esi + 8], ebp
rep stosd dword es:[edi], eax
test dword [ebx + 0x23c], 0x400000
je 0x44c238
mov eax, dword [esp + 0x70]
or al, 0x10
mov dword [esp + 0x70], eax
mov edi, dword [esp + 0x9c]
cmp edi, ebp
je 0x44c2d1
lea eax, [esp + 0x14]
push ebp
push eax
push ebx
call dword [ebx + 0x164]
mov ebp, eax
add esp, 0xc
test ebp, ebp
jne 0x44c4d4
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x5c]
push 0x1e
push ecx
push edi
push eax
call dword [eax + 0x4c]
mov edx, dword [edi]
mov eax, dword [edi + 4]
mov dword [esp + 0x34], edx
push esi
lea ecx, [esp + 0x38]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0xac]
push 5
lea edx, [esp + 0x74]
push ecx
mov ecx, dword [esp + 0xb0]
push edx
push eax
push ecx
push ebx
call fcn.0044d6d0
mov ebp, eax
mov eax, dword [esp + 0x40]
push 0
push eax
call dword [eax + 0x48]
add esp, 0x34
test eax, eax
je 0x44c2ba
test ebp, ebp
jne 0x44c2ba
mov ebp, eax
cmp ebp, 0xffff874e
jne 0x44c2c9
xor ebp, ebp
jmp 0x44c4d4
test ebp, ebp
jne 0x44c4d4
mov eax, dword [esi]
test eax, eax
je 0x44c4d4
mov edx, dword [esi + 8]
push 0x44c560
push 0x2c
push eax
push edx
call fcn.004a8020
mov ecx, dword [esi]
add esp, 0x10
xor ebx, ebx
xor edi, edi
test ecx, ecx
mov dword [esp + 0x10], 0xffffffff
jle 0x44c4cd
mov eax, dword [esi + 8]
mov dword [esp + 0x18], ecx
add eax, 0xc
mov dword [esp + 0x1c], eax
test byte [eax + 0x1c], 1
jne 0x44c332
mov edx, dword [eax]
cmp edx, ebx
jne 0x44c328
mov ecx, dword [esp + 0x10]
cmp dword [eax - 4], ecx
je 0x44c332
mov ebx, edx
mov edx, dword [eax - 4]
mov dword [esp + 0x10], edx
inc edi
mov ecx, dword [esp + 0x18]
add eax, 0x2c
dec ecx
mov dword [esp + 0x18], ecx
jne 0x44c313
test edi, edi
je 0x44c4cd
cmp edi, 1
jne 0x44c3a2
mov ecx, 6
xor eax, eax
lea edi, [esp + 0x74]
lea edx, [esp + 0x74]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x1c]
lea ecx, [esp + 0x38]
push ecx
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xac]
push 2
push edx
push 0
push eax
mov eax, dword [esp + 0xa4]
push eax
mov dword [esp + 0x90], 0x1c
call dword [eax + 0x19c]
mov ebx, dword [esp + 0xa8]
add esp, 0x18
mov ebp, eax
jmp 0x44c50e
mov edx, dword [esp + 0x90]
lea ecx, [esp + 0x30]
push ecx
push 0x20
push edi
push edx
mov dword [esp + 0x3c], edi
call fcn.0043a9d0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x44c4cd
mov ecx, dword [esp + 0x90]
lea eax, [esp + 0x34]
push eax
push 0x18
push edi
push ecx
call fcn.0043a9d0
mov ebp, eax
add esp, 0x10
test ebp, ebp
jne 0x44c4cd
mov eax, dword [esi]
xor ebx, ebx
or ebp, 0xffffffff
cmp eax, ebx
mov dword [esp + 0x10], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
jle 0x44c48d
xor ecx, ecx
xor edi, edi
xor eax, eax
mov edx, dword [esi + 8]
add edx, edi
test byte [edx + 0x28], 1
jne 0x44c479
mov ebx, dword [edx + 0xc]
cmp ebx, dword [esp + 0x18]
jne 0x44c424
cmp dword [edx + 8], ebp
je 0x44c479
mov ebp, dword [edx + 8]
mov edx, dword [esp + 0x30]
mov dword [esp + 0x18], ebx
mov dword [eax + edx], 1
mov edx, dword [esp + 0x30]
mov dword [eax + edx + 4], 2
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x30]
add edx, ecx
mov dword [eax + ebx + 0xc], edx
mov edx, dword [esi + 8]
mov ebx, dword [esp + 0x34]
add eax, 0x20
lea edx, [edi + edx + 0xc]
mov dword [ecx + ebx], edx
mov edx, dword [esp + 0x34]
mov dword [ecx + edx + 4], 0x1c
mov edx, dword [esp + 0x10]
inc edx
add ecx, 0x18
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x1c]
mov ebx, dword [esi]
inc edx
add edi, 0x2c
cmp edx, ebx
mov dword [esp + 0x1c], edx
jl 0x44c40b
xor ebx, ebx
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 0xa8]
lea eax, [esp + 0x20]
push eax
mov eax, dword [esp + 0x94]
push ecx
push edx
push ebx
push edi
push eax
call dword [eax + 0x1b4]
mov ebp, eax
add esp, 0x18
cmp ebp, ebx
je 0x44c4cd
mov eax, dword [esp + 0x90]
push edi
push eax
call fcn.0044c1b0
add esp, 8
mov ebx, dword [esp + 0x90]
mov eax, dword [esp + 0x34]
test eax, eax
je 0x44c4e6
push eax
push ebx
call fcn.0043ab30
add esp, 8
mov eax, dword [esp + 0x30]
test eax, eax
je 0x44c4f8
push eax
push ebx
call fcn.0043ab30
add esp, 8
mov ecx, dword [esi]
mov edx, dword [esi + 8]
push 0x44c5d0
push 0x2c
push ecx
push edx
call fcn.004a8020
add esp, 0x10
xor edi, edi
cmp ebp, edi
jne 0x44c51d
cmp dword [esp + 0xa4], edi
jne 0x44c537
cmp dword [esi + 4], edi
je 0x44c537
mov eax, dword [esi + 8]
push eax
push ebx
call fcn.0043ab30
add esp, 8
mov dword [esi + 8], edi
mov dword [esi + 4], edi
mov dword [esi], edi
test byte [esp + 0x70], 0x10
je 0x44c550
mov eax, dword [esp + 0x5c]
cmp eax, edi
je 0x44c550
push eax
push ebx
call fcn.0043a920
add esp, 8
pop edi
mov eax, ebp
pop esi
pop ebp
pop ebx
add esp, 0x7c
ret