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

Disassembly:
sub esp, 0x1d0
mov eax, dword [0x10c67840]
xor eax, esp
mov dword [esp + 0x1cc], eax
test byte [0x10c893a0], 1
push ebx
push ebp
mov ebp, dword [esp + 0x1dc]
push esi
push edi
mov dword [esp + 0x44], ebp
mov edi, ecx
mov dword [esp + 0x30], 0
jne 0x1011f9bc
or dword [0x10c893a0], 1
lea eax, [esp + 0x8c]
push eax
mov ecx, 0x10c21b2c
call fcn.1006ef10
push eax
mov ecx, 0x10c1a0f0
lea esi, [esp + 0x1a8]
call fcn.10071450
add esp, 4
push eax
mov ecx, 0x10c14cc0
mov esi, 0x10c89368
call fcn.10071450
add esp, 4
lea eax, [esp + 0x1a4]
call fcn.1006ebf0
lea eax, [esp + 0x8c]
call fcn.1006ebf0
push 0x1031ff60
call fcn.102f3141
add esp, 4
test edi, edi
je 0x1012023e
cmp byte [edi + 0x18], 0
jne 0x1012023e
mov ebx, dword [edi + 4]
test ebx, ebx
je 0x1012023e
mov eax, dword [ebx + 0x44]
test eax, eax
je 0x1011f9f6
mov ecx, dword [eax + 8]
mov ebp, dword [ecx + 0x104]
test ebp, ebp
mov dword [esp + 0x54], ebp
je 0x1011f9fc
mov ecx, dword [ebp + 8]
jmp 0x1011f9fe
xor ebp, ebp
mov dword [esp + 0x54], ebp
xor ecx, ecx
lea edx, [esp + 0x28]
push edx
mov eax, edi
call fcn.10124360
mov ecx, dword [eax]
mov dword [eax], 0
mov eax, dword [esp + 0x2c]
add esp, 4
xor edi, edi
test eax, eax
mov dword [esp + 0x34], ecx
mov dword [esp + 0x20], ecx
mov esi, eax
je 0x1011fa3e
add dword [eax], 0xffffffff
cmp dword [esi], edi
jg 0x1011fa3e
call fcn.100a2520
push esi
call fcn.102f353f
add esp, 4
cmp ebp, edi
je 0x1011fa52
cmp dword [ebp + 0x18], edi
jne 0x1011fa4e
mov esi, ebp
call fcn.1030ad1f
add dword [ebp + 0x18], 1
mov ebp, dword [esp + 0x34]
cmp byte [ebp + 0x18], 0
jne 0x1011fa8b
mov eax, dword [ebp + 8]
cmp eax, dword [ebp + 0x10]
jne 0x1011fa8b
mov ecx, dword [ebp + 0xc]
cmp ecx, dword [ebp + 0x14]
jne 0x1011fa8b
mov esi, dword [esp + 0x44]
push esi
mov ecx, 0x10c12b1c
call fcn.1006ef10
lea eax, [esp + 0x20]
call fcn.10008b10
mov eax, esi
jmp 0x1012024b
lea esi, [esp + 0x24]
mov eax, ebp
call fcn.100a25c0
cmp eax, edi
mov dword [esp + 0x24], eax
je 0x1011fa6c
mov ecx, ebx
call fcn.1030ad1f
lea esi, [esp + 0x18]
call fcn.10120270
mov esi, ebp
call fcn.100a4cf0
mov ebx, eax
mov dword [esp + 0x20], ebx
mov dword [esp + 0x2c], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], edi
mov dword [esp + 0x50], edi
call fcn.100a4b60
mov ecx, dword [ebp + 0xc]
mov esi, eax
mov eax, dword [ebp + 8]
cmp eax, edi
mov dword [esp + 0x38], eax
je 0x1011fae4
add dword [eax + 4], 1
push 1
lea edx, [esp + 0x3c]
mov dword [esp + 0x40], ecx
push edx
lea ecx, [esp + 0x64]
call fcn.1030ad1f
lea eax, [esp + 0x38]
call fcn.10069bb0
mov eax, dword [ebp + 0x10]
cmp eax, edi
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x38], eax
je 0x1011fb13
add dword [eax + 4], 1
push 1
lea eax, [esp + 0x3c]
mov dword [esp + 0x40], ecx
push eax
lea ecx, [esp + 0x70]
call fcn.1030ad1f
lea eax, [esp + 0x38]
call fcn.10069bb0
cmp esi, ebx
mov dword [esp + 0x28], esi
je 0x1011fda3
mov ebp, dword [esp + 0x20]
xor edi, edi
call fcn.100ba720
cmp dword [esi + 0x18], edi
mov ebx, eax
mov byte [esp + 0x1f], 0
mov byte [esp + 0x17], 1
jne 0x1011fba6
push 0x10c88588
mov eax, esi
call fcn.101238f0
add esp, 4
test eax, eax
jne 0x1011fba6
mov byte [esp + 0x17], al
mov eax, dword [esi + 0x14]
test eax, eax
mov byte [esp + 0x1f], 1
je 0x1011fb7f
mov ebx, eax
jmp 0x1011fb94
mov eax, esi
cmp dword [eax + 0x14], 0
jne 0x1011fc34
mov eax, dword [eax + 8]
test eax, eax
jne 0x1011fb81
xor ebx, ebx
test ebp, ebp
je 0x1011fba6
push ebp
mov ecx, esi
call fcn.100baaa0
test al, al
je 0x1011fba6
mov ebx, ebp
mov eax, dword [esi + 0x18]
test eax, eax
je 0x1011fbc4
test byte [eax + 0x1b], 4
jne 0x1011fbc4
call fcn.10121f00
test al, al
je 0x1011fbc4
cmp ebx, ebp
je 0x1011fd91
cmp byte [esp + 0x17], 0
je 0x1011fc00
push 0
push 0
lea ecx, [esp + 0x1ac]
push esi
push ecx
mov ecx, dword [esp + 0x44]
call fcn.1011e7f0
add esp, 0x10
push eax
lea edx, [esp + 0x7c]
push edx
lea eax, [esp + 0x20]
push eax
call fcn.10120e30
lea eax, [esp + 0x1a4]
call fcn.1006ebf0
mov edx, dword [esi]
mov eax, dword [edx + 0x170]
mov ecx, esi
call eax
test eax, eax
je 0x1011fc3c
cmp byte [esp + 0x1f], 0
jne 0x1011fc3c
cmp byte [esp + 0x17], 0
je 0x1011fd91
lea eax, [esp + 0x28]
lea esi, [esp + 0x48]
call fcn.10098650
jmp 0x1011fd91
mov ebx, dword [eax + 0x14]
jmp 0x1011fb94
cmp byte [esp + 0x17], 0
je 0x1011fc6c
mov eax, esi
lea edi, [esp + 0x1a4]
call fcn.1011f060
push eax
lea ecx, [esp + 0x78]
push ecx
lea edx, [esp + 0x20]
push edx
call fcn.10120e30
mov eax, edi
call fcn.1006ebf0
mov dword [esp + 0x2c], esi
cmp dword [esi + 0x14], 0
je 0x1011fc7a
cmp ebx, ebp
jne 0x1011fd91
cmp dword [esp + 0x48], 0
je 0x1011fcee
cmp ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
mov ebp, dword [eax + ecx*4 - 4]
je 0x1011fc9f
push ebx
mov ecx, ebp
call fcn.100baaa0
test al, al
jne 0x1011fcee
mov eax, ebp
lea edi, [esp + 0x1a4]
call fcn.1011f060
push eax
lea edx, [esp + 0x80]
push edx
lea eax, [esp + 0x20]
push eax
call fcn.10120e30
mov eax, edi
call fcn.1006ebf0
mov eax, dword [esp + 0x48]
lea edi, [eax - 1]
cmp edi, eax
mov dword [esp + 0x2c], ebp
jbe 0x1011fce6
cmp edi, dword [esp + 0x50]
jbe 0x1011fce6
push edi
lea eax, [esp + 0x4c]
call fcn.100594e0
test edi, edi
mov dword [esp + 0x48], edi
jne 0x1011fc81
test ebx, ebx
je 0x1011fcf7
mov ebp, dword [ebx + 8]
jmp 0x1011fcf9
xor ebp, ebp
cmp ebx, dword [esp + 0x20]
je 0x1011fd91
cmp esi, ebp
je 0x1011fd91
mov ecx, dword [esp + 0x2c]
push esi
call fcn.100baaa0
test al, al
je 0x1011fd1b
mov esi, ecx
mov esi, dword [esi + 8]
test esi, esi
je 0x1011fd91
cmp esi, ebp
je 0x1011fd91
cmp dword [esi + 0x18], 0
je 0x1011fd8a
push 0
push 0
lea ecx, [esp + 0x1ac]
push esi
push ecx
mov ecx, dword [esp + 0x44]
call fcn.1011e7f0
add esp, 0x10
push eax
lea edx, [esp + 0x5c]
push edx
lea eax, [esp + 0x20]
push eax
call fcn.10120ea0
lea eax, [esp + 0x1a4]
call fcn.1006ebf0
mov eax, esi
lea edi, [esp + 0x1a4]
call fcn.1011f060
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x20]
push edx
call fcn.10120e30
mov eax, edi
call fcn.1006ebf0
mov dword [esp + 0x2c], esi
mov esi, dword [esi + 8]
test esi, esi
jne 0x1011fd22
mov ebp, dword [esp + 0x20]
cmp ebx, ebp
mov esi, ebx
mov dword [esp + 0x28], esi
jne 0x1011fb40
mov ebx, dword [esp + 0x24]
mov eax, ebx
xor ebp, ebp
call fcn.10122c40
cmp dword [ebx + 0x18], ebp
je 0x1011fe27
mov esi, ebx
lea edi, [esp + 0x28]
call fcn.10100210
mov eax, dword [eax]
lea ecx, [esp + 0x24]
push ecx
mov esi, eax
call fcn.1030ad1f
mov esi, dword [eax]
mov dword [eax], ebp
lea eax, [esp + 0x24]
mov dword [esp + 0x20], esi
call fcn.101ccbe0
mov eax, edi
call fcn.101ccbe0
mov edx, 0xbb
mov ecx, esi
call fcn.1011f7f0
test al, al
jne 0x1011fe18
push ebx
call fcn.1011f8a0
add esp, 4
test al, al
je 0x1011fe07
mov ebp, ebx
jmp 0x1011fe18
push fcn.1011f8a0
mov eax, ebx
call fcn.10123960
add esp, 4
mov ebp, eax
lea eax, [esp + 0x20]
call fcn.101ccbe0
test ebp, ebp
mov eax, ebp
jne 0x1011fe29
mov eax, ebx
push 0x10c88494
call fcn.101238f0
add esp, 4
test eax, eax
je 0x1011fe3c
mov ebp, eax
push 0x10c882dc
mov eax, ebx
call fcn.101238f0
add esp, 4
test eax, eax
je 0x1011fe80
lea edx, [esp + 0x24]
push edx
push ecx
lea edi, [esp + 0x94]
mov dword [esp + 0x38], 3
call fcn.1008eb70
add esp, 4
call fcn.1030ad1f
mov eax, dword [eax]
mov edi, dword [esp + 0x34]
push eax
call fcn.100a4d70
add esp, 4
mov ebx, dword [esp + 0x30]
test bl, 2
je 0x1011fe99
and ebx, 0xfffffffd
lea eax, [esp + 0x24]
mov dword [esp + 0x30], ebx
call fcn.10008b10
test bl, 1
je 0x1011feb2
lea ecx, [esp + 0x8c]
and ebx, 0xfffffffe
push ecx
mov dword [esp + 0x34], ebx
call fcn.100120e0
test ebp, ebp
je 0x1011ff2a
mov edx, dword [esp + 0x2c]
mov esi, dword [edx + 8]
test esi, esi
je 0x1011ff2a
mov ecx, dword [esp + 0x34]
push 0
push 1
lea eax, [esp + 0x1ac]
push esi
push eax
call fcn.1011e7f0
add esp, 0x10
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x20]
push edx
call fcn.10120ea0
lea eax, [esp + 0x1a4]
call fcn.1006ebf0
mov eax, esi
lea edi, [esp + 0x1a4]
call fcn.1011f060
push eax
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x20]
push ecx
call fcn.10120e30
mov eax, edi
call fcn.1006ebf0
cmp esi, ebp
mov dword [esp + 0x2c], esi
je 0x1011ff2a
mov esi, dword [esi + 8]
test esi, esi
jne 0x1011fec1
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x1012010c
mov ebx, dword [eax + 8]
test ebx, ebx
je 0x10120108
cmp dword [ebx + 0x18], 0
je 0x10120108
mov esi, ebx
lea edi, [esp + 0x28]
call fcn.10100210
mov eax, dword [eax]
lea edx, [esp + 0x24]
push edx
mov esi, eax
call fcn.1030ad1f
mov ebp, dword [eax]
mov dword [eax], 0
mov eax, dword [esp + 0x24]
test eax, eax
je 0x1011ff8f
add dword [eax + 4], 0xffffffff
add eax, 4
cmp dword [eax], 0
jg 0x1011ff8f
lea ecx, [eax - 4]
test ecx, ecx
je 0x1011ff8f
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov eax, dword [esp + 0x28]
test eax, eax
je 0x1011ffb2
add dword [eax + 4], 0xffffffff
add eax, 4
cmp dword [eax], 0
jg 0x1011ffb2
lea ecx, [eax - 4]
test ecx, ecx
je 0x1011ffb2
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
push ebp
mov eax, ebx
call fcn.1011e230
add esp, 4
push 1
push 0x11
push 0x10c0d0e8
push ebp
call fcn.100fa290
mov eax, dword [ebp]
mov edx, dword [eax + 0x64]
mov ecx, ebp
call edx
test eax, eax
jbe 0x101200f0
mov eax, dword [ebp]
mov edx, dword [eax + 0x5c]
push 1
lea ecx, [esp + 0x24]
push ecx
mov ecx, ebp
call edx
push eax
lea edi, [esp + 0x13c]
call fcn.1011dc90
add esp, 8
push eax
push ecx
lea eax, [esp + 0x174]
push eax
mov ecx, 0x10c21b44
call fcn.1006ef10
push eax
mov ecx, 0x10c1fba0
lea esi, [esp + 0x108]
call fcn.10071450
add esp, 4
push eax
mov ecx, 0x10c21b38
lea esi, [esp + 0xd0]
call fcn.10071450
add esp, 8
lea esi, [esp + 0x90]
call fcn.10071410
add esp, 4
push eax
mov ecx, 0x10c14cc0
lea esi, [esp + 0x1a8]
call fcn.10071450
add esp, 4
lea eax, [esp + 0x8c]
call fcn.1006ebf0
lea eax, [esp + 0xc4]
call fcn.1006ebf0
lea eax, [esp + 0xfc]
call fcn.1006ebf0
lea eax, [esp + 0x16c]
call fcn.1006ebf0
mov eax, edi
call fcn.1006ebf0
lea ecx, [esp + 0x20]
push ecx
call fcn.10001b00
mov edx, esi
push edx
lea eax, [esp + 0x3c]
push eax
lea ecx, [esp + 0x20]
push ecx
call fcn.10120ea0
lea edx, [esp + 0x8c]
push edx
mov ecx, 0x10c21b54
call fcn.1006ef10
lea eax, [esp + 0x8c]
push eax
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x20]
push edx
call fcn.10120e30
lea eax, [esp + 0x8c]
call fcn.1006ebf0
mov eax, esi
call fcn.1006ebf0
add dword [ebp + 4], 0xffffffff
cmp dword [ebp + 4], 0
jg 0x10120108
mov ecx, ebp
test ecx, ecx
je 0x10120108
mov eax, dword [ecx]
mov edx, dword [eax]
push 1
call edx
mov ebx, dword [esp + 0x30]
test bl, 8
je 0x10120120
lea eax, [esp + 0x80]
and ebx, 0xfffffff7
call fcn.10069bb0
lea eax, [esp + 0x80]
push eax
lea edx, [esp + 0x6c]
or ebx, 0x30
call fcn.1030ad1f
lea ecx, [esp + 0x3c]
add esp, 4
push ecx
lea edx, [esp + 0x60]
mov esi, eax
call fcn.1030ad1f
add esp, 4
push eax
mov edx, esi
call fcn.1006d580
add esp, 4
test al, al
je 0x1012016f
lea esi, [esp + 0x5c]
call fcn.1010cf10
test al, al
je 0x1012016f
lea esi, [esp + 0x68]
call fcn.1010cf70
test bl, 0x20
je 0x10120180
lea eax, [esp + 0x38]
and ebx, 0xffffffdf
call fcn.10069bb0
test bl, 0x10
je 0x10120191
lea eax, [esp + 0x80]
call fcn.10069bb0
mov esi, dword [esp + 0x54]
test esi, esi
je 0x101201bf
mov eax, dword [esi + 0x18]
test eax, eax
jbe 0x101201a6
add eax, 0xffffffff
mov dword [esi + 0x18], eax
cmp dword [esi + 0x18], 0
jne 0x101201bf
mov edx, dword [esi]
mov eax, dword [edx + 8]
add eax, 0x48
call fcn.1030ad1f
push esi
call fcn.10121af0
lea eax, [esp + 0x1a4]
push eax
mov ecx, 0x10c12b1c
call fcn.1006ef10
mov ebx, dword [esp + 0x44]
lea ecx, [esp + 0x1a4]
push ecx
mov edx, ebx
lea ecx, [esp + 0x1c]
call fcn.101db410
lea eax, [esp + 0x1a4]
call fcn.1006ebf0
lea eax, [esp + 0x68]
call fcn.10069bb0
lea eax, [esp + 0x5c]
call fcn.10069bb0
mov edx, dword [esp + 0x4c]
push edx
call fcn.102f353f
mov edi, dword [esp + 0x1c]
add esp, 4
test edi, edi
je 0x10120220
call fcn.100ce9d0
mov esi, dword [esp + 0x34]
add dword [esi], 0xffffffff
cmp dword [esi], 0
jg 0x1012023a
call fcn.100a2520
push esi
call fcn.102f353f
add esp, 4
mov eax, ebx
jmp 0x1012024b
push ebp
mov ecx, 0x10c12b1c
call fcn.1006ef10
mov eax, ebp
mov ecx, dword [esp + 0x1dc]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.102f2d37
add esp, 0x1d0
ret