Function at 0x10010010
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10015b30
mov eax, dword fs:[0]
push eax
push ebx
push esi
mov eax, dword [0x1001b010]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0xc]
sub eax, 0
je 0x1001025a
sub eax, 1
jne 0x1001027e
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push 0
push 2
call dword [sym.imp.KERNEL32.dll_OpenThread]
mov bl, byte [0x10016954]
mov dword [0x1001bf8c], eax
call fcn.10012b50
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentThread]
test eax, eax
jne 0x100100ad
call esi
push eax
call fcn.10013030
test eax, eax
jne 0x100100a8
push 0x1000dc60
mov ecx, fcn.100123f0
test bl, bl
mov eax, fcn.10012860
push 0x1001c088
cmovne eax, ecx
call eax
test eax, eax
jne 0x100100a8
call fcn.10012bb0
test eax, eax
je 0x100100ad
call fcn.10012a40
call fcn.10012b50
test eax, eax
jne 0x100100e3
call esi
push eax
call fcn.10013030
test eax, eax
jne 0x100100de
push 0x1000dfd0
push 0x1001c094
call fcn.100123f0
test eax, eax
jne 0x100100de
call fcn.10012bb0
test eax, eax
je 0x100100e3
call fcn.10012a40
call fcn.10012b50
test eax, eax
jne 0x10010119
call esi
push eax
call fcn.10013030
test eax, eax
jne 0x10010114
push 0x1000db40
push 0x1001c084
call fcn.100123f0
test eax, eax
jne 0x10010114
call fcn.10012bb0
test eax, eax
je 0x10010119
call fcn.10012a40
call fcn.10012b50
test eax, eax
jne 0x1001014f
call esi
push eax
call fcn.10013030
test eax, eax
jne 0x1001014a
push 0x1000dd50
push 0x1001c08c
call fcn.100123f0
test eax, eax
jne 0x1001014a
call fcn.10012bb0
test eax, eax
je 0x1001014f
call fcn.10012a40
call fcn.10012b50
test eax, eax
jne 0x10010185
call esi
push eax
call fcn.10013030
test eax, eax
jne 0x10010180
push 0x1000e0c0
push 0x1001c098
call fcn.100123f0
test eax, eax
jne 0x10010180
call fcn.10012bb0
test eax, eax
je 0x10010185
call fcn.10012a40
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1001be78]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x1001c118]
cmp eax, dword [ecx + 4]
jle 0x100101ce
push 0x1001c118
call fcn.1001486f
add esp, 4
cmp dword [0x1001c118], 0xffffffff
jne 0x100101ce
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x1001c118
mov dword [0x1001c114], eax
call fcn.10014825
add esp, 4
call fcn.10012b50
test eax, eax
jne 0x10010204
call esi
push eax
call fcn.10013030
test eax, eax
jne 0x100101ff
push 0x1000d620
push 0x1001c114
call fcn.100123f0
test eax, eax
jne 0x100101ff
call fcn.10012bb0
test eax, eax
je 0x10010204
call fcn.10012a40
call fcn.10012b50
test eax, eax
jne 0x1001023a
call esi
push eax
call fcn.10013030
test eax, eax
jne 0x10010235
push 0x1000de10
push 0x1001c090
call fcn.10012860
test eax, eax
jne 0x10010235
call fcn.10012bb0
test eax, eax
je 0x1001023a
call fcn.10012a40
push dword [ebp + 8]
call dword [sym.imp.KERNEL32.dll_DisableThreadLibraryCalls]
push 0
push 0
push 0
push 0x1000ff30
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
jmp 0x1001027e
mov dword [ebp - 4], 0
mov eax, dword [0x1001b814]
cmp eax, 0xffffffff
je 0x1001027e
push 0
push eax
call dword [0x1001bfa8]
mov dword [0x1001b814], 0xffffffff
mov eax, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc