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

Disassembly:
push ebp
lea ebp, [esp - 0x44]
sub esp, 0xd8
mov eax, dword [0x101366b4]
xor eax, ebp
mov dword [ebp + 0x40], eax
mov eax, dword [ebp + 0x54]
and dword [ebp - 0x58], 0
mov dword [ebp - 0x44], eax
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 0x70]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp + 0x74]
push ebx
mov dword [ebp - 0x80], eax
mov eax, dword [ebp + 0x78]
push esi
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp + 0x7c]
push edi
mov edi, dword [ebp + 0x4c]
mov dword [ebp - 0x6c], eax
lea eax, [ebp - 0x38]
push eax
push edi
call fcn.100c2988
test eax, eax
js 0x100c3039
mov esi, dword [ebp - 0x38]
xor edx, edx
mov ecx, dword [ebp + 0x64]
add esi, 0x18
mov eax, dword [ebp + 0x5c]
test ecx, ecx
mov ebx, 0xffff
mov dword [ebp - 0x50], esi
sete dl
cmp ecx, ebx
mov dword [esi + 0x5c], eax
mov eax, dword [ebp + 0x60]
mov dword [esi + 0x60], eax
movzx eax, cx
cmova eax, ebx
test edx, edx
push 0xa
movzx eax, ax
pop ecx
cmovne eax, ecx
mov word [esi + 0x10], ax
mov eax, dword [ebp + 0x50]
push edi
mov dword [esi + 0x38], eax
call fcn.100377f0
mov ebx, dword [ebp + 0x68]
imul eax, eax, 0x68
test byte [eax + 0x10177a64], 1
je 0x100c2b18
or dword [esi + 0x68], 0x40000
jmp 0x100c2b2e
mov eax, dword [esi + 0x68]
and eax, 0xfffbffff
or eax, 0x80
and ebx, 0xffffffcf
mov dword [esi + 0x68], eax
mov dword [ebp + 0x68], ebx
cmp dword [ebp + 0x58], 0xffffffff
push 5
pop ecx
jne 0x100c2b72
push ecx
lea eax, [ebp - 0x34]
mov dword [ebp - 0x94], 0x28
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x94]
push eax
push dword [ebp - 0x44]
push 0x10002450
push 0
push dword [ebp + 0x50]
push edi
call fcn.1003bab0
test eax, eax
js 0x100c2b72
test dword [ebp - 0x18], 0x4000000
jne 0x100c2b7d
push edi
call fcn.10106f5b
cmp eax, 0xffffffff
jne 0x100c2b84
mov esi, 0xfffff111
jmp 0x100c2bfd
push edi
call fcn.10105f83
test eax, eax
je 0x100c2b95
or dword [esi + 0x68], 0x2000000
test bl, 0x40
je 0x100c2ba9
test ebx, 0x200
je 0x100c2ba9
or dword [esi + 0x68], 0x400
test bl, 0x20
je 0x100c2bb5
or dword [esi + 0x68], 0x800
test byte [ebp + 0x6c], 1
je 0x100c2bc2
or dword [esi + 0x68], 0x100000
test byte [ebp + 0x6c], 0x20
je 0x100c2bcf
or dword [esi + 0x68], 0x4000000
lea eax, [ebp - 0xc]
xor ebx, ebx
push ebx
push eax
mov dword [esi], eax
call fcn.1011b540
mov edi, dword [ebp - 0x50]
mov esi, eax
pop ecx
pop ecx
test esi, esi
je 0x100c2c0c
cmp dword [edi + 0x40], 0xffffffff
je 0x100c2bfd
push dword [edi + 0x40]
push dword [ebp + 0x4c]
call fcn.1003c120
or dword [edi + 0x40], 0xffffffff
push dword [ebp - 0x38]
call fcn.100c616a
mov eax, esi
jmp 0x100c3039
mov eax, dword [ebp + 0x68]
mov esi, dword [ebp + 0x58]
mov dword [edi + 0x84], eax
mov eax, dword [ebp + 0x6c]
mov dword [edi + 0x88], eax
lea eax, [ebp - 0x84]
push ebx
push ebx
push eax
lea eax, [ebp - 0x70]
push eax
lea eax, [ebp - 0x4c]
push 4
push eax
push 0x10002a4c
push ebx
cmp esi, 0xffffffff
jne 0x100c2c55
push dword [ebp - 0x54]
mov ebx, dword [ebp + 0x50]
push 0x10002450
push ebx
push dword [ebp + 0x4c]
call fcn.1002ccc0
jmp 0x100c2c61
push esi
push dword [edi + 0x30]
call fcn.1002d030
mov ebx, dword [ebp + 0x50]
mov ecx, eax
mov eax, 0xfffff1f0
cmp ecx, 0xfffffae7
je 0x100c2c78
cmp ecx, 0xfffff1ee
jne 0x100c2c7a
mov ecx, eax
test ecx, ecx
jns 0x100c2c86
cmp ecx, eax
jne 0x100c304d
push dword [ebp - 0x5c]
mov eax, dword [ebp - 0x4c]
xor edx, edx
push dword [ebp - 0x80]
cmp ecx, 0xfffff1f0
cmove eax, edx
mov dword [edi + 0xc8], eax
lea eax, [edi + 0x14]
push eax
push esi
push dword [ebp - 0x54]
push ebx
push dword [ebp - 0x38]
call fcn.100ce66f
push ebx
push dword [ebp - 0x38]
call fcn.100c3058
mov ebx, dword [edi + 0x2c]
mov eax, dword [edi]
and dword [ebx + 0x48], 0
and dword [ebx + 0x78], 0
mov dword [ebx + 0x18], eax
mov eax, dword [ebp + 0x50]
mov dword [ebx + 0x30], eax
cmp esi, 0xffffffff
je 0x100c2cfc
lea eax, [ebp - 0x64]
push eax
push esi
push dword [ebp + 0x4c]
call fcn.1002a3b0
test eax, eax
jns 0x100c2cec
push eax
jmp 0x100c304e
lea eax, [ebx + 0x48]
push eax
push dword [ebp - 0x64]
call fcn.1002a4b0
test eax, eax
js 0x100c2ce6
test byte [edi + 0x6c], 1
je 0x100c2d09
or dword [ebx + 0x1c], 0x4000
push dword [ebp + 0x4c]
call fcn.10105f83
mov ecx, dword [ebx + 0x4c]
xor ecx, eax
push 3
and ecx, 1
xor dword [ebx + 0x4c], ecx
movzx eax, word [edi + 0x70]
pop edx
push 2
pop ecx
cmp ax, cx
je 0x100c2d30
cmp ax, dx
jne 0x100c2d3d
test byte [edi + 0x68], 2
je 0x100c2d3d
and dword [edi + 0x84], 0xffffffef
mov esi, dword [ebp + 0x50]
push esi
push dword [ebp - 0x38]
call fcn.100c3765
push esi
push dword [ebp - 0x38]
call fcn.100c3654
push dword [ebp - 0x38]
call fcn.100b4a39
lea esi, [edi + 0x14]
push esi
push dword [ebp - 0x38]
call fcn.100daba6
mov esi, dword [esi]
push esi
push dword [ebp - 0x38]
call fcn.100b9248
test eax, eax
js 0x100c2ce6
push dword [ebp - 0x38]
call fcn.100d03b4
push esi
push dword [ebp - 0x38]
call fcn.100d0e23
push 0
push 1
push esi
push dword [ebp - 0x38]
call fcn.1009575d
push esi
push dword [ebp - 0x38]
call fcn.100bc5b6
push esi
push dword [ebp - 0x38]
call fcn.100d890e
push edi
push esi
push dword [ebp - 0x38]
call fcn.100c321a
push dword [ebp - 0x38]
call fcn.100bbe57
push dword [edi + 0x88]
push dword [edi + 0x84]
push esi
push dword [ebp - 0x38]
call fcn.100da87e
push 1
push dword [ebp - 0x38]
mov dword [ebp - 0x68], eax
call fcn.100b925c
test eax, eax
js 0x100c2ce6
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
cmp dword [eax], 2
jne 0x100c2e08
xor ecx, ecx
cmp dword [eax + 0x18], ecx
jne 0x100c2e08
cmp dword [esi + 0x24], ecx
jne 0x100c2e08
cmp dword [eax + 0x24], ecx
jne 0x100c2e08
mov dword [esi + 0x18], ecx
jmp 0x100c2f76
push dword [edi + 0x14]
push dword [ebp - 0x38]
call fcn.100b599a
test eax, eax
js 0x100c2ce6
push esi
push dword [ebp - 0x38]
call fcn.100f7571
push esi
push dword [ebp - 0x38]
call fcn.10094a2f
push dword [ebp - 0x38]
call fcn.100b29a3
test eax, eax
js 0x100c2ce6
cmp dword [esi], 6
jne 0x100c2e4c
mov eax, dword [esi + 0x10]
mov eax, dword [eax]
mov dword [ebp - 0x3c], eax
jmp 0x100c2e51
mov eax, esi
mov dword [ebp - 0x3c], esi
push eax
push dword [ebp - 0x38]
call fcn.1008fd50
movzx ecx, word [edi + 0x70]
push 2
mov dword [ebp - 0x40], eax
pop eax
mov dword [ebp - 0x48], edx
cmp cx, ax
je 0x100c2e88
push 3
pop eax
cmp cx, ax
je 0x100c2e88
push 4
pop eax
cmp cx, ax
je 0x100c2e88
push 5
pop eax
cmp cx, ax
je 0x100c2e88
xor eax, eax
jmp 0x100c2e8b
xor eax, eax
inc eax
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x44], eax
cmp dword [ecx], 3
je 0x100c2ee3
cmp dword [ecx], 4
je 0x100c2ee3
test eax, eax
jne 0x100c2ee3
push edx
push dword [ebp - 0x40]
push dword [ecx + 0x3c]
push dword [ecx + 0x38]
call fcn.10096dcb
mov ecx, eax
mov eax, dword [ebp - 0x3c]
cmp dword [eax + 0x2c], 0
je 0x100c2ec5
push dword [eax + 0x2c]
push edx
push ecx
call fcn.10096d7f
mov ecx, eax
push edx
push ecx
push dword [ebp - 0x48]
push dword [ebp - 0x40]
call fcn.10096d54
mov ecx, dword [ebp - 0x3c]
mov dword [ebx + 0xd0], eax
mov dword [ebx + 0xd4], edx
jmp 0x100c2ef5
mov eax, dword [ecx + 0x38]
mov dword [ebx + 0xd0], eax
mov eax, dword [ecx + 0x3c]
mov dword [ebx + 0xd4], eax
push ecx
push dword [ebp - 0x38]
call fcn.1008f8ee
cmp dword [ebp - 0x44], 0
je 0x100c2f24
mov eax, dword [ebp - 0x3c]
cmp dword [eax], 3
je 0x100c2f24
cmp dword [eax], 4
je 0x100c2f24
mov ecx, dword [eax + 0x40]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x58], 1
push dword [edi + 0x84]
push esi
push dword [ebp - 0x38]
call fcn.100daef8
cmp dword [ebp - 0x58], 0
je 0x100c2f6d
mov eax, dword [esi + 0x10]
push 8
mov ecx, dword [eax]
mov eax, dword [ebx + 0xd0]
mov dword [ecx + 0x38], eax
mov eax, dword [ebx + 0xd4]
mov dword [ecx + 0x3c], eax
push dword [ecx + 0x3c]
mov eax, dword [ebp - 0x40]
push dword [ecx + 0x38]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 0x48]
push ecx
mov dword [ecx + 0x44], eax
push dword [ebp - 0x38]
call fcn.1008f963
push esi
push dword [ebp - 0x38]
call fcn.100e3f2b
mov eax, dword [0x101318ac]
cmp eax, 0xffffffff
jne 0x100c2fce
lea eax, [ebp - 0x78]
mov dword [ebp - 0x78], 0xa
push eax
lea eax, [ebp + 0x34]
push eax
push 0x1000c760
push 0x100040ac
push reloc.mswstr10.dll_Ordinal_2
call fcn.1003b440
test eax, eax
jne 0x100c2fc7
lea eax, [ebp + 0x34]
push 0x1000c788
push eax
call fcn.101190a7
pop ecx
pop ecx
test eax, eax
jne 0x100c2fc7
mov dword [0x101318ac], 1
jmp 0x100c2fd2
xor eax, eax
mov dword [0x101318ac], eax
test eax, eax
je 0x100c2fdb
push esi
push dword [ebp - 0x38]
call fcn.100f4551
test byte [ebp + 0x6c], 0x40
je 0x100c3007
lea eax, [ebp - 0x7c]
push eax
lea eax, [ebp - 0x74]
push eax
push dword [ebp - 0x38]
call fcn.10105445
test eax, eax
js 0x100c2ce6
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x7c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x74]
mov dword [ecx + 4], eax
push dword [ebp - 0x38]
call fcn.100bc1a1
mov eax, dword [ebp - 0x60]
mov dword [eax], ebx
mov eax, dword [edi + 0xcc]
test eax, eax
je 0x100c3024
push eax
call fcn.1003ab40
push dword [ebp - 0x38]
call fcn.100cac4a
mov eax, dword [ebp - 0x68]
and dword [ebx + 0x24], 0
mov dword [ebx + 0x90], eax
mov ecx, dword [ebp + 0x40]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10117cfd
lea esp, [ebp + 0x44]
pop ebp
ret 0x34
push ecx
lea eax, [ebp - 0xc]
push eax
call fcn.1011b480
int3