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

Disassembly:
sub esp, 0x1e4
cmp dword [esp + 0x1f4], 0
push ebx
mov ebx, dword [esp + 0x1ec]
push ebp
push esi
push edi
mov ebp, ebx
mov dword [esp + 0x10], ebx
jne 0x445b8b
mov dword [0x8014bc], 1
push 1
call fcn.0044bdc0
push eax
call fcn.0041d150
lea eax, [esp + 0x1c]
push 0xffffffffffffffff
push eax
call fcn.0044fdf0
lea ecx, [esp + 0x24]
push ecx
call fcn.0044ff30
lea edx, [esp + 0x78]
push 0xc8
push edx
call fcn.004015a0
mov eax, dword [0x48f174]
mov ecx, dword [0x48f170]
mov edx, dword [0x14435b8]
push eax
push ecx
push edx
lea eax, [esp + 0x8c]
push eax
lea ecx, [esp + 0x158]
push ecx
call fcn.0044b540
mov edx, dword [0x48f174]
add esp, 0x30
push 0
push 0
push 0
sub esp, 0xc8
mov esi, eax
mov ecx, 0x32
lea edi, [esp + 0x138]
rep movsd dword es:[edi], dword [esi]
mov edi, esp
push edx
mov ecx, 0x32
mov esi, 0x14434e8
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48f170]
push ecx
push 0
push 0
sub esp, 0xc8
mov esi, eax
mov ecx, 0x32
mov edi, esp
rep movsd dword es:[edi], dword [esi]
call fcn.004144a0
add esp, 0x1ac
mov esi, 2
mov al, byte [esi + 0x7f0a4c]
cmp al, 2
je 0x445c5e
cmp al, 7
je 0x445c5e
mov dword [esp + esi*4 + 0x3c], 0
jmp 0x445c81
mov edx, dword [0xd69a6c]
push edx
push 0
push 0
push esi
push 4
push 0x47e858
mov dword [esp + esi*4 + 0x54], 1
call fcn.0044a4b0
add esp, 0x18
add esi, 1
cmp esi, 6
jl 0x445c46
mov eax, dword [0xd69a70]
push eax
push 0
push 0
push 6
push 4
push 0x47e858
call fcn.0044a4b0
add esp, 0x18
cmp ebp, 0xfe
jg 0x445f45
je 0x446116
cmp ebp, 0x17
ja case.0x445cbb.14
jmp dword [ebp*4 + 0x4461ac]
mov ebp, 0xb
jmp case.0x445cbb.14
sub esp, 0xc8
mov eax, 3
mov ecx, 0x32
lea esi, [esp + 0x12c]
mov edi, esp
mov dword [esp + 0xd8], eax
mov dword [0xd69af0], eax
rep movsd dword es:[edi], dword [esi]
call fcn.004408e0
mov ebx, dword [esp + 0xd8]
add esp, 0xc8
mov ebp, eax
jmp case.0x445cbb.14
mov ecx, dword [esp + 0x200]
mov eax, 4
push ecx
mov dword [esp + 0x14], eax
mov dword [0xd69af0], eax
call fcn.00441b20
mov ebx, dword [esp + 0x14]
add esp, 4
mov ebp, eax
jmp case.0x445cbb.14
call fcn.0044bdc0
push eax
call fcn.0044fd10
mov ebp, ebx
sub ebp, 5
add esp, 4
neg ebp
sbb ebp, ebp
and ebp, ebx
jmp case.0x445cbb.14
push 0
call fcn.00443030
add esp, 4
test eax, eax
je case.0x445cbb.1
mov ebp, ebx
sub ebp, 6
neg ebp
sbb ebp, ebp
and ebp, ebx
jmp case.0x445cbb.14
call fcn.0043e750
test eax, eax
je case.0x445cbb.1
mov ebp, ebx
sub ebp, 7
neg ebp
sbb ebp, ebp
and ebp, ebx
jmp case.0x445cbb.14
mov esi, dword [0x106d9f8]
mov edi, dword [0x106d9fc]
mov ebp, dword [0x106da00]
mov ebx, dword [0x106da04]
mov byte [0x8014c0], 1
call fcn.0044a920
call fcn.0044a940
mov eax, dword [0x4be1b0]
cdq
push 1
push 0xff
sub eax, edx
push 0x47f7d0
sar eax, 1
sub eax, 1
push eax
push 0xe1ffff
push 0x10101
sub esp, 0x10
mov eax, esp
mov dword [eax], esi
mov dword [eax + 4], edi
sub esp, 0xc8
mov dword [eax + 8], ebp
lea edx, [esp + 0x11c]
mov edi, esp
mov dword [eax + 0xc], ebx
mov ecx, 0x32
mov esi, 0x14434e8
push edx
rep movsd dword es:[edi], dword [esi]
call fcn.0040d060
mov eax, dword [0x48f174]
add esp, 0xf4
push 0
push 0
sub esp, 0xc8
mov edi, esp
mov ecx, 0x32
mov esi, 0x14434e8
push eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48f170]
push ecx
push 0
push 0
call fcn.0044b3c0
add esp, 0xe0
push 0x2bc
call dword [0x47d080]
mov edx, dword [0x1069b78]
cmp edx, 1
je 0x4460ab
push 0xdb48b8
push 0xf0def8
mov byte [0x8014c0], 0
call fcn.00421300
push 0x551998
push 0x8660b8
call fcn.00421300
mov ebx, dword [esp + 0x20]
add esp, 0x10
mov byte [0x1065518], 1
xor ebp, ebp
jmp case.0x445cbb.14
cmp byte [0x1065518], 1
je 0x445fdd
xor ebp, ebp
jmp case.0x445cbb.14
push 0
call fcn.00443030
add esp, 4
test eax, eax
je case.0x445cbb.1
mov ebp, ebx
sub ebp, 0xa
neg ebp
sbb ebp, ebp
and ebp, ebx
jmp case.0x445cbb.14
push 0
call fcn.00444a20
add esp, 4
test eax, eax
je case.0x445cbb.1
mov ebp, ebx
sub ebp, 0xb
neg ebp
sbb ebp, ebp
and ebp, ebx
jmp case.0x445cbb.14
cmp dword [esp + 0x10], 0
je case.0x445cbb.1
mov ebp, ebx
sub ebp, 0xc
neg ebp
sbb ebp, ebp
and ebp, ebx
jmp case.0x445cbb.14
cmp byte [0x6a8fb8], 1
je 0x4460ee
xor ebp, ebp
jmp case.0x445cbb.14
call fcn.00439a30
xor ebp, ebp
jmp case.0x445cbb.14
call fcn.0043a5d0
call fcn.00438af0
xor ebp, ebp
jmp case.0x445cbb.14
call fcn.0043b1c0
call fcn.00438af0
xor ebp, ebp
jmp case.0x445cbb.14
cmp ebp, 0xff
jne case.0x445cbb.14
lea eax, [esp + 0x64]
push eax
call fcn.0044ca70
lea ecx, [esp + 0x18]
push 0xffffffffffffffff
push ecx
call fcn.0044fda0
lea edx, [esp + 0x20]
push edx
call fcn.0044fef0
add esp, 0x10
cmp dword [esp + 0x204], 0
jne 0x445f88
mov dword [0x8014bc], 0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1e4
ret
mov ebx, 1
mov esi, 2
mov edi, 0x7f08cc
mov al, byte [esi + 0x7f0a4c]
cmp al, 2
je 0x445fb2
cmp al, 7
jne 0x445fce
mov eax, dword [0xd69a6c]
mov ecx, dword [esi*4 + 0x7f0a74]
push eax
push 0
push ecx
push esi
push 2
push edi
call fcn.0044a4b0
add esp, 0x18
add esi, ebx
add edi, 0x40
cmp esi, 6
jl 0x445fa4
jmp 0x44611b
mov esi, dword [0x106dbe8]
mov edi, dword [0x106dbec]
mov ebx, dword [0x106dbf0]
mov ebp, dword [0x106dbf4]
mov byte [0x8014c0], 1
call fcn.0044a920
call fcn.0044a940
mov eax, dword [0x4be1b0]
cdq
push 1
push 0xff
sub eax, edx
push 0x47f7b8
sar eax, 1
sub eax, 1
push eax
push 0xe1ffff
push 0x10101
sub esp, 0x10
mov eax, esp
mov dword [eax], esi
mov dword [eax + 4], edi
sub esp, 0xc8
mov dword [eax + 8], ebx
lea edx, [esp + 0x10c]
mov edi, esp
mov dword [eax + 0xc], ebp
mov ecx, 0x32
mov esi, 0x14434e8
push edx
rep movsd dword es:[edi], dword [esi]
call fcn.0040d060
mov eax, dword [0x48f174]
add esp, 0xf4
push 0
push 0
sub esp, 0xc8
mov edi, esp
mov ecx, 0x32
mov esi, 0x14434e8
push eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [0x48f170]
push ecx
push 0
push 0
call fcn.0044b3c0
add esp, 0xe0
push 0x2bc
call dword [0x47d080]
mov edx, dword [0x1069b78]
cmp edx, 1
jne 0x4460b5
call fcn.0044bde0
jmp case.0x445cbb.1
push 0xf0def8
push 0x6a9fd8
call fcn.0041f690
push 0x8660b8
push 0x551998
mov byte [0x7f0de9], 0
call fcn.00421300
push 0x6a9fd8
push 0xdb48b8
call fcn.00421300
add esp, 0x18
jmp 0x446116
push 0x551998
push 0x6a9fd8
call fcn.0041f690
push 0x6a9fd8
push 0xdb48b8
call fcn.00421300
add esp, 0x10
mov byte [0x6a8fb8], 0
mov ebx, 0x80
mov byte [0x8014c0], 1
call fcn.0044a920
call fcn.0044a940
push 0
call fcn.0044bdc0
push eax
call fcn.0041d150
add esp, 8
cmp dword [esp + 0x1fc], 1
jne 0x44615e
push 1
push 0
push 0x1f4
push 0x47e858
push 1
call fcn.00415da0
add esp, 0x14
lea eax, [esp + 0x64]
push eax
call fcn.0044ca70
lea ecx, [esp + 0x18]
push 0xffffffffffffffff
push ecx
call fcn.0044fda0
lea edx, [esp + 0x20]
push edx
call fcn.0044fef0
add esp, 0x10
cmp dword [esp + 0x204], 0
je 0x446193
cmp ebx, 0x80
jne 0x44619d
mov dword [0x8014bc], 0
pop edi
pop esi
pop ebp
mov eax, ebx
pop ebx
add esp, 0x1e4
ret