Function at 0x10005a20
Capabilities:
Create thread

Disassembly:
push ebp
mov ebp, esp
push ecx
push esi
push edi
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
xor esi, esi
nop
cmp esi, 0x64
jl 0x10005ad9
cmp dword [0x10069d70], 0
jne 0x10005a61
push 0x10050818
call fcn.100045b0
lea eax, [ebp - 1]
mov byte [ebp - 1], 1
push 0x10050818
push eax
call fcn.1002b6e0
add esp, 0xc
cmp dword [0x10069d74], 0
jne 0x10005a89
push str.Error_0001._Couldnt_find_g_pEngine_pointer.
call fcn.100045b0
lea eax, [ebp - 1]
mov byte [ebp - 1], 1
push str.Error_0001._Couldnt_find_g_pEngine_pointer.
push eax
call fcn.1002b6e0
add esp, 0xc
cmp dword [0x10069d78], 0
jne 0x10005ab1
push str.Error_0002._Couldnt_find_g_pStudio_pointer.
call fcn.100045b0
lea eax, [ebp - 1]
mov byte [ebp - 1], 1
push str.Error_0002._Couldnt_find_g_pStudio_pointer.
push eax
call fcn.1002b6e0
add esp, 0xc
cmp dword [0x10069d7c], 0
jne 0x10005ad9
push str.Error_0003._Couldnt_find_g_pPlayerMove_pointer.
call fcn.100045b0
lea eax, [ebp - 1]
mov byte [ebp - 1], 1
push str.Error_0003._Couldnt_find_g_pPlayerMove_pointer.
push eax
call fcn.1002b6e0
add esp, 0xc
push 0x64
call edi
inc esi
call fcn.10026ee0
test al, al
je 0x10005a30
call fcn.10026540
test eax, eax
je 0x10005a30
cmp byte [0x1006a314], 0
mov dword [0x10069d70], eax
jne 0x10005b20
push eax
push str._tg_pClient:_0x_X
call fcn.100045b0
mov eax, dword [0x10069d70]
add esp, 8
mov byte [0x1006a314], 1
push 0xac
push eax
push 0x10069d88
call fcn.1002c100
add esp, 0xc
cmp dword [0x10069d88], 0
je 0x10005a30
call fcn.100265e0
test eax, eax
je 0x10005a30
cmp byte [0x1006a315], 0
mov dword [0x10069d74], eax
jne 0x10005b75
push eax
push str._tg_pEngine:_0x_X
call fcn.100045b0
mov eax, dword [0x10069d74]
add esp, 8
mov byte [0x1006a315], 1
push 0x20c
push eax
push 0x10069e38
call fcn.1002c100
add esp, 0xc
cmp dword [0x10069f14], 0
je 0x10005a30
call fcn.10026d80
test eax, eax
je 0x10005a30
cmp byte [0x1006a316], 0
mov dword [0x10069d78], eax
jne 0x10005bca
push eax
push str._tg_pStudio:_0x_X
call fcn.100045b0
mov eax, dword [0x10069d78]
add esp, 8
mov byte [0x1006a316], 1
push 0xb8
push eax
push 0x1006a048
call fcn.1002c100
add esp, 0xc
cmp dword [0x1006a0bc], 0
je 0x10005a30
call fcn.100266f0
test eax, eax
je 0x10005a30
cmp byte [0x1006a317], 0
mov dword [0x10069d7c], eax
jne 0x10005c1a
push eax
push str._tg_pPlayerMove:_0x_X
call fcn.100045b0
add esp, 8
mov byte [0x1006a317], 1
call fcn.10026de0
test eax, eax
je 0x10005a30
cmp byte [0x1006a318], 0
mov dword [0x10069d84], eax
jne 0x10005c4a
push eax
push str._tg_pUserMsgBase:_0x_X
call fcn.100045b0
add esp, 8
mov byte [0x1006a318], 1
call fcn.10026820
test eax, eax
je 0x10005a30
cmp byte [0x1006a319], 0
mov dword [0x10069e34], eax
jne 0x10005c7a
push eax
push str._tg_pEngineMsgBase:_0x_X
call fcn.100045b0
add esp, 8
mov byte [0x1006a319], 1
push esi
push str.FindCounterValue:__d
call fcn.100045b0
add esp, 8
cmp byte [0x10069cfc], 0
jne 0x10005d32
push str.HookClient...
call fcn.100045b0
mov eax, dword [0x10069d70]
push str.HookStudio...
mov dword [eax + 0x84], 0x10003490
mov eax, dword [0x10069d70]
mov dword [eax + 0x88], 0x10003a20
mov eax, dword [0x10069d70]
mov dword [eax + 0xc], 0x10004040
mov eax, dword [0x10069d70]
mov dword [eax + 0x4c], 0x100047c0
mov eax, dword [0x10069d70]
mov dword [eax + 0x38], 0x10003140
mov eax, dword [0x10069d70]
mov dword [eax + 0x50], 0x10003430
mov eax, dword [0x10069d70]
mov dword [eax + 0x64], 0x10003fb0
call fcn.100045b0
mov eax, dword [0x10069d78]
add esp, 8
mov dword [eax + 0x5c], 0x10004730
mov eax, dword [0x10069d78]
push 0x64
mov dword [eax + 0x9c], 0x100046c0
call edi
cmp byte [0x10069cfc], 0
je 0x10005c95
push 0
push 0
push 0
push 0x100206f0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
mov ecx, dword [ebp + 8]
pop edi
pop esi
mov dword [ecx], eax
mov esp, ebp
pop ebp
ret