Function at 0x4dbb00
Capabilities:
Create thread
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x18
mov edi, dword [ebp + 8]
lea eax, [esp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_QueryPerformanceFrequency]
test eax, eax
je 0x4dbd36
push str.User32
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
mov dword [0x5da110], eax
je 0x4dbd9a
mov esi, eax
push str.GetMessageA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da114], eax
jne 0x4dbb7f
push str.GetMessageAA
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da114], eax
jne 0x4dbb7f
push str.GetMessageAW
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da114], eax
je 0x4dbd9a
mov esi, dword [0x5da110]
push str.PeekMessageA
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da118], eax
jne 0x4dbbc8
push str.PeekMessageAA
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da118], eax
jne 0x4dbbc8
push str.PeekMessageAW
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da118], eax
je 0x4dbd9a
mov esi, dword [0x5da110]
push str.PostThreadMessageA
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da0f4], eax
jne 0x4dbc11
push str.PostThreadMessageAA
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da0f4], eax
jne 0x4dbc11
push str.PostThreadMessageAW
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
mov dword [0x5da0f4], eax
je 0x4dbd9a
mov ebx, dword [esp + 0xc]
mov esi, dword [esp + 8]
mov dword [0x5da104], ebx
mov dword [0x5da100], esi
push ebx
push esi
push 0xe8
push 0xd4a51000
call fcn.00521610
add esp, 0x10
mov dword [0x5da10c], edx
mov dword [0x5da108], eax
push ebx
push esi
push str.hires_timer_available__Frequency:__llu_Hz_
push str.windows_init_clock
push 4
push 0
call fcn.004cd4b0
add esp, 0x18
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea ecx, [esp + 0x10]
lea edx, [esp + 4]
push ecx
push edx
push eax
call dword [sym.imp.KERNEL32.dll_GetProcessAffinityMask]
test eax, eax
je 0x4dbdb1
mov eax, dword [esp + 4]
test eax, eax
je 0x4dbdb1
mov ecx, 0xffffffff
nop dword [eax]
inc ecx
mov edx, 1
shl edx, cl
bt eax, ecx
jae 0x4dbc90
mov dword [esp + 4], edx
push ecx
push str.timer_thread_will_run_on_core__d
push str.windows_init_clock
push 4
push 0
call fcn.004cd4b0
add esp, 0x14
push 0
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
test eax, eax
je 0x4dbdc7
mov esi, eax
push 0x5da0f8
push 0
push eax
push 0x4dbf90
push 0
push 0
call dword [sym.imp.msvcrt.dll__beginthreadex]
add esp, 0x18
test eax, eax
mov dword [0x5da0f0], eax
je 0x4dbded
push dword [esp + 4]
push eax
call dword [sym.imp.KERNEL32.dll_SetThreadAffinityMask]
test eax, eax
jne 0x4dbd1b
push str.unable_to_set_timer_thread_affinity__timer_discrepancies_may_arise
push str.windows_init_clock
push 2
push edi
call fcn.004cd4b0
add esp, 0x10
push 0xffffffffffffffff
push esi
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
je 0x4dbe1b
push str.failed_to_wait_for_timer_thread_to_become_ready___aborting
jmp 0x4dbdf2
push str.no_hires_timer_available_on_this_platform
push str.windows_init_clock
push 4
push 0
call fcn.004cd4b0
add esp, 0x10
mov dword [0x5da104], 0
mov dword [0x5da100], 0
mov dword [0x5da10c], 0
mov dword [0x5da108], 0
cmp dword [0x5da0e4], 0
je 0x4dbe2f
push str.hash_table_already_allocated
push str.htab_create
push 1
push edi
call fcn.004cd4b0
add esp, 0x10
xor eax, eax
jmp 0x4dbe13
push str.could_not_resolve_DLL_functions
push str.windows_init_clock
push 1
push edi
call fcn.004cd4b0
add esp, 0x10
jmp 0x4dbe09
push 0
call fcn.004db2c0
add esp, 4
push 0x5d9fe0
push str.could_not_get_process_affinity:__s
jmp 0x4dbddb
push 0
call fcn.004db2c0
add esp, 4
push 0x5d9fe0
push str.could_not_create_event:__s
push str.windows_init_clock
push 1
push edi
call fcn.004cd4b0
add esp, 0x14
jmp 0x4dbe09
push str.unable_to_create_timer_thread___aborting
push str.windows_init_clock
push 1
push edi
call fcn.004cd4b0
add esp, 0x10
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.004dbef0
mov eax, 0xfffffff5
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [0x5da0e4], 0
jne 0x4dbd81
push 0x5da0ec
call fcn.004d3ad0
add esp, 4
mov eax, 0x3fd
nop word cs:[eax + eax]
nop dword [eax + eax]
mov ecx, eax
mov esi, 3
cmp eax, 0xa
jb 0x4dbe86
mov esi, 3
nop word cs:[eax + eax]
nop dword [eax + eax]
mov eax, ecx
xor edx, edx
div esi
test edx, edx
je 0x4dbe86
add esi, 2
mov eax, esi
imul eax, esi
cmp eax, ecx
jb 0x4dbe70
mov eax, ecx
xor edx, edx
div esi
lea eax, [ecx + 2]
test edx, edx
je 0x4dbe50
mov dword [0x5da0e0], ecx
push ecx
push str.using__lu_entries_hash_table
push str.htab_create
push 4
push 0
call fcn.004cd4b0
add esp, 0x14
mov eax, dword [0x5da0e0]
mov dword [0x5da0e8], 0
inc eax
push 8
push eax
call sub.msvcrt.dll_calloc
add esp, 8
mov ecx, eax
mov dword [0x5da0e4], eax
xor eax, eax
test ecx, ecx
jne 0x4dbe13
push str.could_not_allocate_space_for_hash_table
push str.htab_create
jmp 0x4dbda4