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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xdc
push ebx
push esi
push edi
xor ebx, ebx
push ebx
push ebx
push 0x20
push 1
push 4
mov esi, ecx
push ebx
push ebx
lea ecx, [esp + 0x70]
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], 1
mov dword [esp + 0x6c], 0x100
xor edi, edi
mov dword [esp + 0x54], ebx
call fcn.00484ea0
mov ecx, eax
call fcn.00484580
push eax
mov eax, dword [ebp + 8]
push ebx
push 0x40
push eax
push ebx
lea ecx, [esp + 0x8c]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
push eax
push 0x130089
lea ecx, [esp + 0x3c]
push ecx
call fcn.00424f70
cmp eax, ebx
jne 0x4461ae
mov ecx, dword [esp + 0x14]
lea edx, [esp + 0x20]
push edx
push 0x38
lea eax, [esp + 0xb8]
push eax
push ebx
push ecx
call fcn.00426300
cmp eax, ebx
mov dword [esp + 0x1c], eax
je 0x445bd4
mov edx, dword [esp + 0x14]
push edx
call fcn.00425460
mov eax, dword [esp + 0x1c]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov edx, dword [ebp + 0xc]
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x20]
push ecx
push ebx
push ebx
push 0x40
push edx
push ebx
lea ecx, [esp + 0x78]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
push eax
mov ecx, esi
call fcn.00441b00
mov eax, dword [esp + 0x14]
lea edx, [esp + 0x1c]
lea ecx, [esi + 0x58]
push edx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x14], ebx
mov dword [esp + 0x20], eax
call fcn.00432e80
test eax, eax
je 0x445c4b
push 8
call fcn.0042bc90
add esp, 4
cmp eax, ebx
je 0x445c3f
mov dword [eax + 4], esi
mov ecx, dword [esi + 4]
mov dword [eax], ecx
mov dword [esi + 4], 1
jmp 0x445c41
xor eax, eax
push eax
lea ecx, [esp + 0x14]
call fcn.00432030
mov edx, dword [esp + 0xb0]
push ebx
push ebx
push 0x21
push 2
push 7
push edx
push ebx
lea ecx, [esp + 0x70]
call fcn.00484ea0
mov ecx, eax
call fcn.00484580
push eax
mov eax, dword [ebp + 0xc]
push ebx
push 0x40
push eax
push ebx
lea ecx, [esp + 0x8c]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
push eax
push 0x100002
lea ecx, [esp + 0x40]
push ecx
call fcn.00424f70
mov esi, eax
cmp esi, ebx
je 0x445ccc
mov edx, dword [esp + 0x14]
push edx
call fcn.00425460
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x445cc1
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push eax
mov dword [ecx + 4], edx
call fcn.0042bc80
add esp, 4
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x445ce5
mov ecx, dword [eax + 4]
mov edx, dword [eax]
push eax
mov dword [ecx + 4], edx
call fcn.0042bc80
add esp, 4
mov eax, dword [esp + 0x18]
push eax
call fcn.00425460
push 0x100834e4
lea ecx, [esp + 0x7c]
push ecx
call dword [0x10176920]
jmp 0x445d03
xor ebx, ebx
cmp edi, ebx
je 0x445d10
push edi
call fcn.0041aa10
add esp, 4
mov esi, dword [esp + 0x50]
push esi
call fcn.0041a8c0
mov edx, dword [esp + 0x44]
add esp, 4
neg edx
mov edi, eax
push ebx
sbb edx, edx
lea eax, [esp + 0x7c]
and edx, eax
push edx
push 1
push 2
push esi
push edi
lea ecx, [esp + 0xc0]
mov dword [esp + 0x50], esi
call fcn.00484ea0
mov ecx, eax
call fcn.00484580
mov ecx, dword [esp + 0x2c]
push eax
push ebx
push ebx
push ebx
push ecx
call fcn.00425a80
cmp eax, 0xc0000004
je 0x44612a
cmp eax, 0x80000005
je 0x44612a
cmp eax, 0xc0000023
je 0x44612a
cmp eax, ebx
jne 0x44615f
cmp dword [esp + 0x40], ebx
je 0x445d8d
mov dword [esp + 0x40], ebx
mov edx, dword [edi + 0x3c]
shr edx, 1
add edx, 1
push edx
lea ecx, [esp + 0x30]
call fcn.0041b1a0
mov eax, dword [edi + 0x3c]
mov esi, dword [esp + 0x2c]
push eax
lea ecx, [edi + 0x44]
push ecx
push esi
call fcn.0041a850
mov edx, dword [esp + 0x3c]
add esp, 0xc
push esi
lea ecx, [esp + 0x60]
mov word [esi + edx*2 - 2], bx
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x68], ebx
call fcn.00419100
mov eax, dword [ebp + 0xc]
push eax
lea ecx, [esp + 0x28]
call fcn.0044f070
push 0x10078c10
lea ecx, [esp + 0x28]
call fcn.0044f190
mov ebx, dword [esp + 0x5c]
push ebx
lea ecx, [esp + 0x28]
call fcn.0044f190
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [esp + 0x4c]
call fcn.0044f070
push 0x10078c10
lea ecx, [esp + 0x28]
call fcn.0044f190
push ebx
lea ecx, [esp + 0x28]
call fcn.0044f190
mov eax, dword [edi + 0x3c]
cmp eax, 4
jne 0x445e36
cmp word [esi], 0x2e
jne 0x445e36
cmp word [esi + 2], 0x2e
je 0x445e45
cmp eax, 2
jne 0x445e41
cmp word [esi], 0x2e
je 0x445e45
test eax, eax
jne 0x445e80
lea ecx, [esp + 0x48]
call fcn.0044f110
lea ecx, [esp + 0x24]
call fcn.0044f110
lea ecx, [esp + 0x5c]
call fcn.00419240
test esi, esi
je 0x445d01
push esi
call fcn.0041aa10
add esp, 4
xor eax, eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
jmp 0x445d01
test dword [edi + 0x38], 0x10
je 0x445efa
mov edx, dword [ebp + 0x10]
push edx
lea ecx, [esp + 0x28]
call fcn.00484580
push eax
lea ecx, [esp + 0x50]
call fcn.00484580
mov ecx, dword [esp + 0x44]
push eax
call fcn.00445b20
mov esi, eax
test esi, esi
je 0x446101
mov ecx, dword [esp + 0x14]
push ecx
mov dword [esp + 0x38], edi
call fcn.00425460
lea ecx, [esp + 0x48]
call fcn.0044f110
lea ecx, [esp + 0x24]
call fcn.0044f110
lea ecx, [esp + 0x5c]
call fcn.00419240
lea ecx, [esp + 0x2c]
call fcn.0041b300
lea ecx, [esp + 0x34]
call fcn.0041b300
mov eax, esi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push 0
push 0
push 0x20
push 1
push 4
push 0
push 0
lea ecx, [esp + 0xb4]
call fcn.00484ea0
mov ecx, eax
call fcn.00484580
push eax
push 0
push 0x40
lea ecx, [esp + 0x70]
call fcn.00484580
push eax
push 0
lea ecx, [esp + 0xb0]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
push eax
push 0x100001
lea eax, [esp + 0x38]
push eax
call fcn.00424f70
lea ecx, [esp + 0x20]
push ecx
lea edx, [esp + 0x1c]
push edx
push 0
push 0
push 0x40
lea ecx, [esp + 0x38]
call fcn.00484580
push eax
push 0
lea ecx, [esp + 0x9c]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
mov ebx, dword [esp + 0x48]
push eax
mov ecx, ebx
call fcn.00441b00
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x20]
xor esi, esi
push ecx
lea ecx, [ebx + 0x58]
mov dword [esp + 0x48], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x24], eax
call fcn.00432e80
test eax, eax
je 0x445fd8
push 8
call fcn.0042bc90
add esp, 4
cmp eax, esi
je 0x445fcc
mov dword [eax + 4], ebx
mov edx, dword [ebx + 4]
mov dword [eax], edx
mov dword [ebx + 4], 1
jmp 0x445fce
xor eax, eax
push eax
lea ecx, [esp + 0x1c]
call fcn.00432030
mov eax, dword [edi + 0x38]
push esi
push esi
push 0x60
push 2
push 7
push eax
push esi
lea ecx, [esp + 0xbc]
call fcn.00484ea0
mov ecx, eax
call fcn.00484580
push eax
push esi
push 0x40
lea ecx, [esp + 0x4c]
call fcn.00484580
push eax
push esi
lea ecx, [esp + 0xb0]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
push eax
push 0x100002
lea ecx, [esp + 0x6c]
push ecx
call fcn.00424f70
mov esi, eax
test esi, esi
jne 0x446139
lea ecx, [esp + 0x18]
call fcn.00432070
push 0x400000
call fcn.0041a8c0
add esp, 4
push 0
lea edx, [esp + 0x20]
push edx
mov esi, eax
mov eax, dword [esp + 0x18]
push 0x400000
push esi
push eax
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], 0x400000
call dword [0x100780e0]
test eax, eax
je 0x4460ac
mov eax, dword [esp + 0x1c]
test eax, eax
jbe 0x4460ac
mov edx, dword [esp + 0x44]
push 0
lea ecx, [esp + 0x78]
push ecx
push eax
push esi
push edx
call dword [0x10078060]
mov ecx, dword [esp + 0x10]
push 0
lea eax, [esp + 0x20]
push eax
push 0x400000
push esi
push ecx
call dword [0x100780e0]
test eax, eax
jne 0x446074
lea ecx, [esp + 0x54]
call fcn.0041b300
cmp dword [ebp + 0x10], 0
je 0x4460ed
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x20]
push edx
lea eax, [esp + 0x1c]
push eax
push 0
push 0
push 0x40
push 0
push ecx
lea ecx, [esp + 0x9c]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
push eax
mov ecx, ebx
call fcn.00441b00
mov edx, dword [esp + 0x10]
push edx
call fcn.00425460
mov eax, dword [esp + 0x44]
push eax
call fcn.00425460
lea ecx, [esp + 0x48]
call fcn.0044f110
lea ecx, [esp + 0x24]
call fcn.0044f110
lea ecx, [esp + 0x5c]
call fcn.00419240
lea ecx, [esp + 0x2c]
call fcn.0041b300
jmp 0x445d01
add esi, 0x100
mov dword [esp + 0x50], esi
jmp 0x445d03
mov edx, dword [esp + 0x10]
push edx
mov dword [esp + 0x38], edi
call fcn.00425460
mov eax, dword [esp + 0x14]
push eax
call fcn.00425460
lea ecx, [esp + 0x18]
call fcn.00432070
jmp 0x445ec2
cmp dword [ebp + 0x10], ebx
mov dword [esp + 0x34], edi
je 0x446199
mov eax, dword [esp + 0x14]
lea ecx, [esp + 0x74]
push ecx
lea edx, [esp + 0x24]
push edx
push ebx
push ebx
push 0x40
push ebx
push eax
lea ecx, [esp + 0x9c]
call fcn.00483d70
mov ecx, eax
call fcn.00484580
mov ecx, dword [esp + 0x48]
push eax
call fcn.00441b00
mov ecx, dword [esp + 0x14]
push ecx
call fcn.00425460
lea ecx, [esp + 0x34]
call fcn.0041b300
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc