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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x8c34b6
add esp, 0xffffff80
mov eax, dword [esp + 0x94]
test eax, eax
je 0x8c3122
nop
lea edx, [0xcaa23c]
mov ebx, dword [esp + 0x84]
mov dword [ebx + 0xc], edx
mov edx, dword [0x12ad060]
test edx, edx
jne 0x8c30e4
mov dword [ebx + 0x10], eax
jmp 0x8c30ec
lea edi, [ebx + 0x10]
call fcn.0045f9a0
mov edx, dword [0x1285ba8]
mov ebp, dword [0x1285bac]
mov ecx, ebx
mov ebx, dword [0x1285bb0]
mov esi, edx
mov edx, dword [eax + 0x20]
mov dword [esp + 0x60], edx
mov edi, edx
mov edx, dword [eax + 0x24]
mov dword [esp + 0x38], edx
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x44]
jmp 0x8c316c
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x34]
inc eax
mov edi, dword [esp + 0x60]
mov dword [esp + 0x34], eax
mov esi, edx
mov ebp, ebx
mov eax, dword [esp + 0x94]
mov edx, dword [esp + 0x38]
mov ebx, ecx
mov ecx, dword [esp + 0x84]
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x34]
cmp ebx, edx
jge 0x8c32b8
mov eax, dword [edi + ebx*4]
mov dword [esp], ecx
mov edx, dword [esp + 0x88]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x8c]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x90]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ebp
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x1c], eax
call fcn.008c34c0
mov eax, dword [esp + 0x28]
nop
mov ecx, eax
and eax, 0x1f
mov edx, dword [esp + 0x20]
mov ebx, dword [esp + 0x24]
cmp eax, 0x14
je 0x8c31d7
xor eax, eax
jmp 0x8c3218
mov dword [esp + 0x5c], edx
mov dword [esp + 0x30], ecx
mov dword [esp + 0x58], ebx
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call fcn.0048e3e0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x6c]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
test eax, eax
sete al
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x58]
test al, al
je 0x8c3147
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 1
call fcn.0048aeb0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
test eax, eax
je 0x8c32a5
nop
movzx ebx, byte [0x1285af8]
test bl, bl
je 0x8c3276
mov dword [0x1285afc], ecx
mov ebx, dword [0x12ad060]
test ebx, ebx
jne 0x8c3269
mov dword [0x1285b00], edx
jmp 0x8c3276
lea edi, [0x1285b00]
mov eax, edx
call fcn.0045f9a0
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], edx
mov ebx, dword [esp + 0x64]
test ebx, ebx
je 0x8c329d
nop
movzx ebp, byte [ebx + 0xf]
mov eax, ebp
and ebp, 0x1f
test al, 0x20
jne 0x8c32ab
or ebp, 0x80
jmp 0x8c32ab
xor ebp, ebp
xor ebx, ebx
xor edx, edx
jmp 0x8c32ab
xor ebp, ebp
xor ebx, ebx
xor edx, edx
mov ecx, ebp
mov eax, edx
mov edx, ebx
mov ebx, eax
jmp 0x8c3147
mov dword [esp + 0x50], ebp
mov dword [esp + 0x4c], esi
mov edx, dword [eax + 0x14]
mov dword [esp + 0x54], edx
mov ebx, dword [eax + 0x18]
mov dword [esp + 0x38], ebx
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x3c]
jmp 0x8c3311
mov ecx, dword [esp + 0x34]
inc ecx
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x94]
mov eax, edi
mov edx, dword [esp + 0x54]
mov ebx, esi
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x84]
mov ebp, dword [esp + 0x34]
cmp ebp, ebx
jge 0x8c3486
mov edx, dword [edx + ebp*4]
movzx ebx, byte [eax + 0x10]
test bl, bl
jne 0x8c343f
mov ebx, dword [edx + 0x10]
mov edx, dword [edx + 0xc]
test ebx, ebx
jbe 0x8c34ac
mov ebx, dword [edx]
mov edx, dword [edx + 4]
lea edi, [esp + 0x6c]
xor eax, eax
call fcn.0045fc4b
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], esi
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x78], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x7c], edx
mov ebx, dword [esp + 0x84]
mov eax, edx
mov edx, dword [ebx + 0x18]
mov edi, ecx
mov ecx, dword [ebx + 0x14]
mov ebp, dword [ebx + 0x1c]
lea ebx, [edx + 1]
cmp ebp, ebx
jae 0x8c33dc
lea eax, [0x98a520]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call fcn.00448250
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x84]
mov dword [ebx + 0x1c], edx
mov edx, dword [0x12ad060]
test edx, edx
jne 0x8c33c4
mov dword [ebx + 0x14], eax
jmp 0x8c33cc
lea edi, [ebx + 0x14]
call fcn.0045f9a0
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0x50]
mov edx, ecx
mov ecx, eax
mov eax, dword [esp + 0x2c]
lea ebx, [edx + 1]
mov ebp, dword [esp + 0x84]
mov dword [ebp + 0x18], ebx
mov ebx, dword [0x12ad060]
lea edx, [edx + edx*4]
lea ecx, [ecx + edx*4]
test ebx, ebx
jne 0x8c340d
mov edx, edi
mov edi, ecx
mov ebx, esi
lea esi, [esp + 0x6c]
call fcn.0046012e
jmp 0x8c32e2
lea eax, [0x98a520]
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [esp + 0x6c]
mov dword [esp + 8], eax
call fcn.00411080
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x84]
jmp 0x8c32e2
mov ebx, dword [edx + 0x10]
mov edx, dword [edx + 0xc]
test ebx, ebx
jbe 0x8c34a3
mov eax, dword [edx]
mov edx, dword [edx + 4]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov eax, dword [esp + 0x50]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edi
call fcn.008c1140
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x50]
mov ebx, dword [esp + 0x4c]
mov ebp, dword [esp + 0x84]
jmp 0x8c32e2
mov dword [esp + 0x98], esi
mov eax, dword [esp + 0x50]
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], edi
sub esp, 0xffffff80
ret
xor eax, eax
mov ecx, ebx
call fcn.0045fa20
xor eax, eax
mov ecx, ebx
call fcn.0045fa20
nop
call fcn.0045e560
jmp fcn.008c30a0