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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa8
push ebx
mov eax, ecx
push ebp
push esi
push edi
mov ecx, dword [eax + 0x1c]
mov esi, dword [eax]
mov dword [esp + 0x34], eax
call fcn.100c6600
test eax, eax
jne 0x100c0815
nop dword [eax + eax]
cmp dword [esi + 0x24], 0
jne 0x100c0813
mov ebx, dword [esi + 0x34]
mov eax, ebx
mov edx, dword [esi + 0x30]
mov ecx, edx
push ebx
push edx
push 0
add ecx, 1
mov dword [esp + 0x4c], edx
push 0
push 0
adc eax, 0
mov dword [esi + 0x30], ecx
push 0
lea edx, [esp + 0x3c]
mov dword [esp + 0x78], ebx
mov ecx, esi
mov dword [esi + 0x34], eax
call fcn.100bf900
mov ebp, eax
xor ecx, ecx
mov eax, dword [esi + 0x70]
xorps xmm0, xmm0
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x14], ebp
mov dword [esp + 0x38], ecx
mov dword [esp + 0x90], ecx
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x50], eax
movlpd qword [esp + 0x78], xmm0
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
test ebp, ebp
jne 0x100c01e2
mov dword [esp + 0x18], eax
xor ebx, ebx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x100c01ce
mov eax, dword [esp + 0x34]
xor edi, edi
mov ebp, dword [esi + 0x64]
sub ebp, dword [esi + 0x60]
movlpd qword [esp + 0x48], xmm0
mov ebx, dword [eax + 8]
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x30], edi
mov dword [esp + 0x44], ebx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x28], eax
mov dword [esp + 0x3c], ebp
nop
test ebx, ebx
jne 0x100bfd4b
mov eax, dword [esi + 0x14]
mov ecx, eax
mov edx, dword [esi]
add edx, 0x10
mov eax, dword [eax]
call eax
mov ebx, eax
mov dword [esp + 0x44], ebx
test ebx, ebx
je 0x100c00bd
mov ecx, dword [esp + 0x30]
mov edi, ecx
mov dword [ebx], 0
test ecx, ecx
je 0x100bfd44
mov dword [ecx], ebx
jmp 0x100bfd4b
mov eax, dword [esp + 0x34]
mov dword [eax + 8], ebx
lea eax, [ebx + 0x10]
mov dword [esp + 0x48], eax
mov dword [esp + 0x18], eax
test ebp, ebp
je 0x100bfd80
mov eax, dword [esi + 0x60]
add eax, 0x10
mov dword [esp + 0x28], ebp
add eax, dword [esi + 0x5c]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x50], ebp
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x18], eax
jmp 0x100bfe86
mov edi, dword [esi]
xor ecx, ecx
mov ebp, dword [esi + 0xc]
mov ebx, eax
mov dword [esp + 0x1c], ecx
test edi, edi
je 0x100bfdc7
lea eax, [esp + 0x54]
mov dword [esp + 0x54], edi
push eax
mov eax, dword [ebp]
mov edx, ebx
mov ecx, ebp
call eax
mov ecx, dword [esp + 0x1c]
mov edx, eax
mov eax, dword [esp + 0x54]
add ecx, eax
add ebx, eax
mov dword [esp + 0x14], edx
sub edi, eax
mov dword [esp + 0x1c], ecx
test edx, edx
jne 0x100bfdcd
test eax, eax
je 0x100bfdc7
test edi, edi
jne 0x100bfd91
xor edx, edx
mov dword [esp + 0x14], edx
add dword [esp + 0x28], ecx
mov ebp, dword [esp + 0x2c]
mov edi, dword [esp + 0x30]
adc ebp, 0
mov eax, dword [esp + 0x50]
test edi, edi
mov dword [esp + 0x2c], ebp
cmove eax, ecx
add dword [esi + 0x68], ecx
mov dword [esp + 0x50], eax
adc dword [esi + 0x6c], 0
xor ebx, ebx
cmp ecx, dword [esi]
setne bl
mov dword [esp + 0x20], ebx
cmp ecx, dword [esi]
je 0x100bfe0a
mov dword [esi + 0x70], 1
test edx, edx
je 0x100bfe28
mov dword [esi + 0x48], edx
mov dword [esi + 0x70], 1
mov dword [esp + 0x20], 1
mov dword [esp + 0x14], 0
mov ebx, dword [esp + 0x28]
mov eax, ebp
mov ecx, ebx
sub ecx, dword [esp + 0x64]
sbb eax, dword [esp + 0x74]
mov dword [esp + 0x7c], eax
jne 0x100bfe43
cmp ecx, 1
jb 0x100bfe82
push dword [esp + 0x60]
lea edx, [esp + 0x28]
mov ecx, esi
push dword [esp + 0x44]
push 0
push 0
push 0
push 0
call fcn.100bf900
mov ebp, eax
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x100c0157
cmp dword [esp + 0x24], eax
jne 0x100c0153
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x64], ebx
mov dword [esp + 0x74], eax
mov ebx, dword [esp + 0x44]
xor eax, eax
mov dword [esp + 0xac], 1
test edi, edi
lea ecx, [esp + 0x98]
mov edi, dword [esp + 0x1c]
sete al
mov dword [esp + 0xa0], edi
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0xa8], eax
mov eax, dword [esi + 0x18]
mov edx, dword [ecx + 4]
mov ecx, dword [esi + 0x1c]
mov eax, dword [eax]
call eax
mov ebp, dword [esp + 0xa8]
mov ecx, dword [esp + 0xac]
mov dword [esp + 0x90], 1
mov dword [esp + 0x58], ecx
cmp ebp, 1
je 0x100c011f
mov eax, dword [esp + 0x3c]
mov edi, dword [esp + 0xa0]
test eax, eax
je 0x100bff26
push edi
push dword [esp + 0x1c]
lea eax, [ebx + 0x10]
push eax
call fcn.100cf690
mov eax, dword [esp + 0x48]
add esp, 0xc
add dword [esi + 0x60], edi
test ebp, ebp
jne 0x100bff8c
cmp dword [esp + 0x20], ebp
jne 0x100bff9f
cmp edi, dword [esp + 0x1c]
jne 0x100bff5b
mov ebp, dword [esp + 0x3c]
mov edi, ebx
mov ebx, dword [ebx]
mov dword [esp + 0x30], edi
mov dword [esp + 0x44], ebx
test ebp, ebp
je 0x100bfd10
xor ebp, ebp
mov dword [esi + 0x60], ebp
mov dword [esi + 0x64], ebp
jmp 0x100bfd0b
mov ebx, dword [esp + 0x58]
mov ebp, 0xb
xor edi, edi
mov dword [esp + 0x14], ebp
mov eax, 1
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x30], edi
mov dword [esp + 0x20], eax
jmp 0x100c0209
mov ecx, dword [esp + 0x20]
cmp ebp, 3
mov edx, 1
cmove ecx, edx
mov dword [esp + 0x20], ecx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x38], 1
cmp edi, ebx
jne 0x100c0021
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
mov ebp, dword [esp + 0x14]
test ebp, ebp
jne 0x100c0185
lea edi, [esi + 0xb0]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [esi + 0x88], ebp
je 0x100c016c
mov eax, dword [esp + 0x60]
cmp eax, dword [esi + 0x94]
jb 0x100c016c
ja 0x100c0014
mov eax, dword [esp + 0x40]
cmp eax, dword [esi + 0x90]
jbe 0x100c016c
mov dword [esp + 0x24], 1
jmp 0x100c0174
cmp ebp, 3
jne 0x100c0081
mov dword [esi + 0x60], 0
mov dword [esi + 0x64], 0
test eax, eax
je 0x100c005a
mov eax, ebx
sub eax, edi
push eax
mov eax, dword [esp + 0x1c]
add eax, edi
push eax
mov eax, dword [esp + 0x50]
add eax, edi
push eax
call fcn.100cf690
mov edi, dword [esp + 0xac]
add esp, 0xc
add dword [esp + 0x18], edi
sub ebx, edi
sub dword [esp + 0x28], ebx
mov dword [esp + 0x1c], ebx
sbb dword [esp + 0x2c], 0
cmp dword [esp + 0x30], 0
jne 0x100bffcd
mov dword [esp + 0x50], edi
jmp 0x100bffcd
test eax, eax
je 0x100c0093
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], 0
jmp 0x100c0102
mov eax, dword [esi + 0x5c]
test eax, eax
jne 0x100c00b6
mov eax, dword [esi + 0x14]
mov ecx, eax
mov edx, dword [esi]
add edx, 0x10
mov eax, dword [eax]
call eax
test eax, eax
je 0x100c00bd
mov edi, dword [esp + 0xa0]
mov dword [esi + 0x5c], eax
lea ecx, [eax + 0x10]
test ecx, ecx
jne 0x100c00d5
mov dword [esp + 0x20], 1
mov dword [esp + 0x80], 1
jmp 0x100bffbd
mov eax, dword [esp + 0x18]
sub ebx, edi
sub dword [esp + 0x28], ebx
push ebx
sbb dword [esp + 0x30], 0
add eax, edi
push eax
push ecx
mov dword [esi + 0x64], ebx
mov dword [esi + 0x60], 0
call fcn.100cf690
mov edi, dword [esp + 0xac]
add esp, 0xc
mov ecx, dword [esp + 0x50]
cmp dword [esp + 0x30], 0
mov dword [esp + 0x20], 0
cmove ecx, edi
mov dword [esp + 0x50], ecx
jmp 0x100bffbd
cmp dword [esp + 0x3c], 0
mov dword [esp + 0x20], 1
mov dword [esp + 0x84], 1
je 0x100bffaf
push edi
push dword [esp + 0x1c]
push dword [esp + 0x50]
call fcn.100cf690
add esp, 0xc
jmp 0x100bffaf
mov ebp, dword [esp + 0x14]
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
jmp 0x100bffd1
mov dword [esp + 0x24], 0
mov ebp, dword [esi + 0x9c]
push edi
mov dword [esp + 0x18], ebp
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x38]
mov ebx, dword [esp + 0x58]
mov eax, dword [esp + 0x24]
xor edi, edi
mov dword [esp + 0x30], edi
test ebp, ebp
jne 0x100c01fa
test ecx, ecx
je 0x100c01f6
test eax, eax
jne 0x100c01fa
mov ecx, dword [esp + 0x34]
mov eax, dword [esi + 0x18]
mov edx, dword [ecx + 4]
mov ecx, dword [esi + 0x1c]
mov eax, dword [eax + 4]
call eax
mov edi, eax
mov dword [esp + 0x30], edi
test edi, edi
je 0x100c0205
mov eax, 1
mov dword [esp + 0x38], ebp
mov dword [esp + 0x20], eax
jmp 0x100c0209
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x28], ecx
mov ecx, ebx
jmp 0x100c0191
mov eax, dword [esp + 0x7c]
mov ebx, ecx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x28], eax
jmp 0x100c018d
test eax, eax
je 0x100c0205
mov eax, 1
mov dword [esp + 0x20], eax
jmp 0x100c0209
mov eax, dword [esp + 0x20]
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
test eax, eax
jne 0x100c0289
mov eax, dword [esi + 0x58]
cmp eax, dword [esi + 0x54]
jae 0x100c025d
test ebx, ebx
je 0x100c025d
lea eax, [eax + eax*4]
lea eax, [eax + 0x19]
lea ecx, [esi + eax*8]
call fcn.100bf3d0
mov ecx, eax
test ecx, ecx
jne 0x100c0242
inc dword [esi + 0x58]
jmp 0x100c025d
mov eax, dword [esi + 0x58]
cmp eax, 1
jne 0x100c025a
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x74], ecx
jmp 0x100c028d
mov dword [esi + 0x54], eax
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 4]
inc ecx
cmp ecx, dword [esi + 0x58]
sbb eax, eax
and eax, ecx
add eax, 5
lea eax, [eax + eax*4]
lea ebx, [esi + eax*8]
lea ecx, [ebx + 0x1c]
mov dword [esp + 0x78], ebx
call fcn.100c6590
test eax, eax
jne 0x100c0815
mov eax, dword [esp + 0x38]
xorps xmm0, xmm0
movlpd qword [esp + 0x48], xmm0
movlpd qword [esp + 0x58], xmm0
movlpd qword [esp + 0x68], xmm0
movlpd qword [esp + 0x88], xmm0
test ebp, ebp
jne 0x100c050b
test eax, eax
je 0x100c050b
test edi, edi
jne 0x100c050b
mov ecx, dword [esp + 0x34]
lea eax, [ebp + 1]
mov edx, dword [esp + 0x68]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x6c]
nop dword [eax]
test eax, eax
je 0x100c030a
mov ebx, dword [esp + 0x50]
jmp 0x100c032e
mov edi, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
sub edi, edx
mov ebx, dword [esi]
sbb eax, ecx
mov dword [esp + 0x48], 0
cmp dword [esp + 0x48], eax
jb 0x100c032e
ja 0x100c032c
cmp ebx, edi
jbe 0x100c032e
mov ebx, edi
add edx, ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x68], edx
adc ecx, 0
mov dword [esp + 0x6c], ecx
cmp edx, dword [esp + 0x28]
jne 0x100c0356
cmp ecx, dword [esp + 0x2c]
jne 0x100c0356
mov eax, 1
jmp 0x100c0358
xor eax, eax
mov edi, dword [esi + 0x18]
lea ecx, [esp + 0x48]
push ecx
lea ecx, [esp + 0x8c]
push ecx
lea ecx, [esp + 0x70]
push ecx
mov ecx, dword [esi + 0x1c]
push eax
mov eax, dword [esp + 0x64]
add eax, 0x10
push ebx
push eax
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 4]
mov eax, dword [edi + 8]
call eax
mov edi, eax
mov dword [esp + 0x30], edi
test edi, edi
jne 0x100c0467
cmp dword [esp + 0x48], eax
jne 0x100c04c2
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
cmp edx, dword [esp + 0x28]
jne 0x100c03b6
cmp ecx, dword [esp + 0x2c]
je 0x100c04c2
mov edi, dword [esp + 0x88]
mov eax, edx
sub eax, dword [esp + 0x44]
mov ebp, ecx
mov ebx, dword [esp + 0x8c]
sbb ebp, dword [esp + 0x3c]
sub edi, dword [esp + 0x58]
sbb ebx, dword [esp + 0x64]
test ebp, ebp
ja 0x100c03ec
jb 0x100c03e3
cmp eax, 1
jae 0x100c03ec
test ebx, ebx
jne 0x100c03ec
cmp edi, 1
jb 0x100c0452
push dword [esp + 0x60]
lea edx, [esp + 0x28]
mov ecx, esi
push dword [esp + 0x44]
push ebx
push edi
push ebp
push eax
call fcn.100bf900
mov ebp, eax
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x100c04be
cmp dword [esp + 0x24], eax
jne 0x100c04be
mov ebx, dword [esp + 0x54]
mov eax, dword [esp + 0x88]
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x6c]
mov edi, dword [esp + 0x8c]
mov ebx, dword [ebx]
mov dword [esp + 0x58], eax
xor eax, eax
mov dword [esp + 0x44], edx
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x64], edi
mov dword [esp + 0x54], ebx
jmp 0x100c0300
mov ebx, dword [esp + 0x54]
xor eax, eax
mov ebp, dword [esp + 0x14]
mov ebx, dword [ebx]
mov dword [esp + 0x54], ebx
jmp 0x100c0300
lea edi, [esi + 0xb0]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [esi + 0x88], 0
je 0x100c0499
mov eax, dword [esp + 0x60]
cmp eax, dword [esi + 0x94]
ja 0x100c04b7
mov eax, dword [esp + 0x40]
jb 0x100c049d
cmp eax, dword [esi + 0x90]
jae 0x100c04b7
jmp 0x100c049d
mov eax, dword [esp + 0x40]
mov dword [esi + 0x90], eax
mov eax, dword [esp + 0x60]
mov dword [esi + 0x94], eax
mov dword [esi + 0x88], 1
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
mov ecx, dword [eax + 0x20]
call fcn.100c6600
test eax, eax
jne 0x100c0815
mov eax, dword [esp + 0x90]
xor ebx, ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x14], eax
cmp dword [esi + 0x24], ebx
jne 0x100c0813
cmp dword [esi + 0x50], ebx
je 0x100c052d
mov eax, 1
mov dword [esp + 0x24], eax
jmp 0x100c0598
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x58], eax
jmp 0x100c04c2
mov ecx, dword [esp + 0x80]
test edi, edi
je 0x100c054d
cmp edi, 2
mov dword [esi + 0x50], 1
mov eax, 1
mov dword [esi + 0x4c], edi
cmove ecx, eax
mov eax, dword [esp + 0x74]
test eax, eax
je 0x100c0563
mov dword [esi + 0x50], 1
mov dword [esi + 0x40], eax
mov dword [esp + 0x14], ebx
test ecx, ecx
je 0x100c0579
mov dword [esi + 0x50], 1
mov dword [esi + 0x38], 1
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x24]
cmp dword [esp + 0x84], ebx
je 0x100c0598
mov dword [esi + 0x50], 1
mov dword [esi + 0x3c], 1
mov dword [esp + 0x14], ebx
cmp dword [esp + 0x38], ebx
je 0x100c0667
test eax, eax
je 0x100c05b8
xorps xmm0, xmm0
movlpd qword [esp + 0x68], xmm0
movlpd qword [esp + 0x88], xmm0
mov ebp, dword [esp + 0x68]
sub ebp, dword [esp + 0x44]
mov eax, dword [esp + 0x6c]
sbb eax, dword [esp + 0x3c]
mov edi, dword [esp + 0x88]
sub edi, dword [esp + 0x58]
mov ebx, dword [esp + 0x8c]
sbb ebx, dword [esp + 0x64]
mov dword [esp + 0x84], eax
lea eax, [esi + 0xb0]
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
add dword [esi + 0xa0], ebp
mov eax, dword [esp + 0x84]
adc dword [esi + 0xa4], eax
add dword [esi + 0xa8], edi
adc dword [esi + 0xac], ebx
cmp dword [esi + 0x9c], 0
jne 0x100c0650
mov eax, dword [esi + 0x98]
test eax, eax
je 0x100c0650
push dword [esi + 0xac]
mov ecx, eax
mov eax, dword [eax]
push dword [esi + 0xa8]
push dword [esi + 0xa4]
push dword [esi + 0xa0]
call eax
test eax, eax
je 0x100c0650
mov dword [esi + 0x9c], 0xa
mov ebp, dword [esi + 0x9c]
lea eax, [esi + 0xb0]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, dword [esp + 0x54]
mov edi, dword [esp + 0x20]
xor ecx, ecx
test edi, edi
sete cl
cmp dword [esp + 0x90], 0
mov dword [esp + 0x94], ecx
je 0x100c0747
test ebp, ebp
jne 0x100c069c
cmp dword [esp + 0x14], ebp
je 0x100c069c
cmp dword [esp + 0x24], ebp
jne 0x100c069c
lea ecx, [ebp + 1]
jmp 0x100c069e
xor ecx, ecx
mov eax, dword [esi + 0x18]
lea edx, [esp + 0x48]
push edx
lea edx, [esp + 0x98]
push edx
push dword [esp + 0x24]
mov eax, dword [eax + 0xc]
push dword [esp + 0x24]
push ecx
mov ecx, dword [esp + 0x48]
mov edx, dword [ecx + 4]
mov ecx, dword [esi + 0x1c]
call eax
mov ebp, eax
test ebp, ebp
je 0x100c06d6
mov ebx, 1
mov dword [esi + 0x50], ebx
jmp 0x100c06e5
mov ecx, dword [esp + 0x94]
test ecx, ecx
jne 0x100c0747
test edi, edi
jne 0x100c0747
lea edi, [esi + 0xb0]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [esi + 0x88], 0
je 0x100c0717
mov eax, dword [esp + 0x60]
cmp eax, dword [esi + 0x94]
ja 0x100c0735
mov eax, dword [esp + 0x40]
jb 0x100c071b
cmp eax, dword [esi + 0x90]
jae 0x100c0735
jmp 0x100c071b
mov eax, dword [esp + 0x40]
mov dword [esi + 0x90], eax
mov eax, dword [esp + 0x60]
mov dword [esi + 0x94], eax
mov dword [esi + 0x88], 1
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x94]
mov edi, dword [esp + 0x20]
cmp dword [esp + 0x48], 0
je 0x100c07b9
cmp dword [esp + 0x38], 0
je 0x100c0776
test ebp, ebp
jne 0x100c0776
cmp dword [esi + 0x50], ebp
jne 0x100c0776
cmp dword [esp + 0x30], ebp
jne 0x100c0776
cmp dword [esp + 0x24], ebp
jne 0x100c0776
cmp dword [esi + 0x84], ebp
jne 0x100c078e
test ebx, ebx
je 0x100c07b9
cmp dword [esi + 0x84], 0
jne 0x100c078e
mov ebp, dword [esp + 0x34]
mov eax, dword [ebp + 4]
mov dword [esi + 0x80], eax
jmp 0x100c0792
mov ebp, dword [esp + 0x34]
mov ebx, dword [esp + 0x28]
mov eax, ebx
mov edx, dword [esp + 0x2c]
or eax, edx
jne 0x100c07a4
test edi, edi
jne 0x100c07ca
mov eax, dword [esp + 0x50]
mov dword [ebp + 0xc], eax
mov dword [ebp + 0x10], ebx
mov dword [ebp + 0x14], edx
inc dword [esi + 0x84]
jmp 0x100c07bd
mov ebp, dword [esp + 0x34]
test edi, edi
jne 0x100c07ca
mov ecx, dword [esp + 0x78]
add ecx, 0x20
jmp 0x100c07f2
test ecx, ecx
je 0x100c07df
lea ecx, [esi + 0xe8]
call fcn.100c6590
test eax, eax
jne 0x100c0815
jmp 0x100c07ec
cmp dword [ebp + 4], 0
je 0x100c0813
mov dword [esi + 0x24], 1
lea ecx, [esi + 0xe4]
call fcn.100c6590
test eax, eax
jne 0x100c0815
mov ecx, dword [ebp + 0x1c]
call fcn.100c6600
test eax, eax
je 0x100bfc30
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret