Function at 0x100838f0
Capabilities:
Create thread
Resume thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100a247a
mov eax, dword fs:[0]
push eax
sub esp, 0x20
push ebx
push esi
push edi
mov eax, dword [0x10112018]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor ebx, ebx
xor ecx, ecx
mov dword [ebp - 0x10], ecx
cmp dword [ebp + 8], ebx
jbe 0x10083bd5
mov eax, dword [ebp + 0x20]
cmp eax, ebx
jne 0x10083934
mov dword [ebp - 0x1c], ebx
jmp 0x1008393a
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x1c], eax
mov esi, dword [ebp + 0x24]
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x18], ecx
cmp esi, ebx
jne 0x10083a9d
push 0x10115520
push 0x3c
call fcn.1009ae46
mov edi, eax
add esp, 8
mov dword [ebp - 0x28], edi
mov dword [ebp - 4], ebx
cmp edi, ebx
je 0x10083a85
call sym.ACE.dll_public:_static_class_ACE_OS_Object_Manager____cdecl_ACE_OS_Object_Manager::instance_void_
mov ecx, dword [eax + 0x24]
mov dword [ebp - 0x20], ecx
call sym.ACE.dll_public:_static_class_ACE_OS_Object_Manager____cdecl_ACE_OS_Object_Manager::instance_void_
mov edx, dword [eax + 0x20]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x10]
mov dword [edi], vtable.ACE_Base_Thread_Adapter.0
mov dword [edi + 4], eax
mov dword [edi + 8], ecx
mov dword [edi + 0xc], sym.ACE.dll_ace_thread_adapter
mov dword [edi + 0x10], ebx
lea esi, [edi + 0x14]
mov dword [ebp - 0x24], edx
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
mov byte [esi + 0x10], 1
mov dword [esi + 0x14], ebx
mov dword [esi + 0x18], ebx
mov dword [esi + 0x1c], ebx
call fcn.10071f50
lea ecx, [eax + 0xc]
call sym.ACE.dll_public:_void____thiscall_ACE_Threading_Helper_class_ACE_Thread_Mutex_::get_void_
mov ebx, eax
test ebx, ebx
jne 0x10083a58
call fcn.10071f50
mov ebx, dword [eax + 8]
call fcn.10071f50
mov eax, dword [eax + 0xc]
push ebx
push eax
call sym.ACE.dll_int___cdecl_ACE_OS::thr_setspecific_unsigned_long_int__void__
add esp, 8
cmp eax, 0xffffffff
jne 0x10083a58
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x14], eax
call dword [sym.imp.MSVCR100.dll__errno]
mov eax, dword [eax]
test eax, eax
jne 0x10083a0a
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x14], edx
jmp 0x10083a0d
mov dword [ebp - 0x14], eax
call sym.ACE.dll_public:_static_class_ACE_Log_Msg____cdecl_ACE_Log_Msg::instance_void_
mov ecx, dword [ebp - 0x14]
push 0x100a4a6b
push str.__P_t__Service_Config_failed_to_set_thread_key_value:__p_n
push 0x80
push eax
mov byte [eax + 0x13c], 1
mov dword [eax + 0x140], str.Service_Config.cpp
mov dword [eax + 0x144], 0x39
mov dword [eax + 0x148], 0xffffffff
mov dword [eax + 0x14c], ecx
call sym.ACE.dll_public:_int___cdecl_ACE_Log_Msg::log_enum_ACE_Log_Priority__char_const__
add esp, 0x10
mov edx, dword [ebp + 0x14]
mov dword [edi + 0x34], ebx
mov dword [edi + 0x38], edx
mov eax, dword [sym.ACE.dll_void____cdecl___class_ACE_OS_Log_Msg_Attributes___int____cdecl___void____int____cdecl___void____ACE_Base_Thread_Adapter::init_log_msg_hook_]
test eax, eax
je 0x10083a78
mov ecx, dword [ebp - 0x20]
mov edx, dword [ebp - 0x24]
push ecx
push edx
push esi
call eax
add esp, 0xc
mov esi, dword [ebp + 0x24]
mov dword [edi], vtable.ACE_OS_Thread_Adapter.0
xor ebx, ebx
jmp 0x10083a87
xor edi, edi
mov dword [ebp - 4], 0xffffffff
mov eax, edi
cmp edi, ebx
je 0x10083b3c
mov ecx, dword [ebp + 0x14]
jmp 0x10083a9f
mov eax, esi
mov dword [ebp - 0x14], ebx
cmp esi, ebx
jne 0x10083aa9
mov dword [ebp - 0x14], eax
mov edi, dword [ebp + 0x18]
mov ebx, ecx
shr ebx, 2
and ebx, 1
test edi, edi
je 0x10083abe
or ecx, 4
mov dword [ebp - 0x18], ecx
mov ecx, dword [eax + 0xc]
lea edx, [ebp - 0x2c]
push edx
mov edx, dword [ebp - 0x18]
push edx
push eax
mov eax, dword [ebp - 0x1c]
push ecx
push eax
push 0
call dword [sym.imp.MSVCR100.dll__beginthreadex]
add esp, 0x18
mov esi, eax
test edi, edi
je 0x10083b15
test esi, esi
je 0x10083b85
push edi
push esi
call dword [sym.imp.KERNEL32.dll_SetThreadPriority]
neg eax
sbb eax, eax
neg eax
dec eax
cmp eax, 0xffffffff
je 0x10083b4a
test eax, eax
jne case.0x10083ba6.4
test ebx, ebx
jne 0x10083b15
push esi
call dword [sym.imp.KERNEL32.dll_ResumeThread]
cmp eax, 0xffffffff
jne 0x10083b15
call fcn.1002a850
test esi, esi
je 0x10083b85
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x10], eax
cmp eax, dword [ebp + 8]
jae 0x10083b73
xor ebx, ebx
mov ecx, eax
jmp 0x10083928
call dword [sym.imp.MSVCR100.dll__errno]
mov dword [eax], 0xc
jmp 0x10083b70
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
call dword [sym.imp.MSVCR100.dll__errno]
mov dword [eax], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x10083b70
mov edx, dword [ecx]
mov eax, dword [edx]
push 1
call eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, dword [sym.imp.MSVCR100.dll__errno]
mov esi, eax
call edi
mov dword [eax], esi
lea eax, [esi - 3]
cmp eax, 0x4d
ja case.0x10083ba6.4
movzx ecx, byte [eax + 0x10083c00]
jmp dword [ecx*4 + 0x10083bec]
call edi
mov dword [eax], 0xc
jmp case.0x10083ba6.4
call edi
mov dword [eax], 0x11
jmp case.0x10083ba6.4
call edi
mov dword [eax], 0xd
jmp case.0x10083ba6.4
call edi
mov dword [eax], 2
jmp case.0x10083ba6.4
mov eax, ecx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret