Function at 0x1005f380
Capabilities:
Log keystrokes via polling
Set console window title

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100743a5
mov eax, dword fs:[0]
push eax
sub esp, 0x7c
mov eax, dword [0x1008d00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
call dword [sym.imp.KERNEL32.dll_AllocConsole]
push 0
call dword [sym.imp.KERNEL32.dll_GetConsoleWindow]
push eax
call dword [sym.imp.USER32.dll_GetSystemMenu]
test eax, eax
je 0x1005f418
mov edi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
push 0
call edi
mov esi, dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_freopen_s]
push eax
push 0x10083b68
lea eax, [ebp - 0x30]
push str.CONIN_
push eax
call esi
push 1
call edi
push eax
push 0x10083b74
lea eax, [ebp - 0x30]
push str.CONOUT_
push eax
call esi
add esp, 0x28
push str.Project_Langram
call dword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov dword [0x10093f18], 0x10082c68
mov byte [0x10093f14], 1
call fcn.1005fc40
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x1c
movups xmmword [ecx], xmm0
push str.___Initializing_Langram..._n
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10007450
push 0xb
push 0x10093f14
call fcn.10069560
mov edi, dword [sym.imp.KERNEL32.dll_Sleep]
add esp, 0x20
mov esi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov dword [ebp - 0x48], edi
push str.mss32.dll
call esi
test eax, eax
je 0x1005f502
push str.ntdll.dll
call esi
test eax, eax
je 0x1005f502
push str.stdshader_dx9.dll
call esi
test eax, eax
je 0x1005f502
push str.materialsystem.dll
call esi
test eax, eax
je 0x1005f502
push str.shaderapidx9.dll
call esi
test eax, eax
je 0x1005f502
push str.client.dll
call esi
test eax, eax
je 0x1005f502
push str.engine.dll
call esi
test eax, eax
je 0x1005f502
push str.vguimatsurface.dll
call esi
test eax, eax
je 0x1005f502
push str.vstdlib.dll
call esi
test eax, eax
je 0x1005f502
push str.studiorender.dll
call esi
test eax, eax
je 0x1005f502
push str.inputsystem.dll
call esi
test eax, eax
je 0x1005f502
push str.vphysics.dll
call esi
test eax, eax
je 0x1005f502
push str.vgui2.dll
call esi
test eax, eax
je 0x1005f502
push str.steamclient.dll
call esi
test eax, eax
jne 0x1005f542
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x29
movups xmmword [ecx], xmm0
push str.____Waiting_for_game_modules_to_start..._n
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10007450
push 0xf
push 0x10093f14
call fcn.10069560
add esp, 0x20
push 0x1388
call edi
jmp 0x1005f460
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x1f
movups xmmword [ecx], xmm0
push str.___Initializing_Signatures..._n
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10007450
push 0xf
push 0x10093f14
call fcn.10069560
add esp, 0x20
call fcn.1006ced0
test al, al
jne 0x1005f590
sub esp, 0x18
mov ecx, esp
push 0x26
push str.____Signature_initialization_failure__n
jmp 0x1005f9cc
push 0x64
call edi
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x1f
movups xmmword [ecx], xmm0
push str.___Initializing_Interfaces..._n
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10007450
push 0xf
push 0x10093f14
call fcn.10069560
add esp, 0x20
call fcn.10069120
test al, al
jne 0x1005f5e2
sub esp, 0x18
mov ecx, esp
push 0x26
push str.____Interface_initialization_failure__n
jmp 0x1005f9cc
push 0x64
call edi
mov edi, dword [0x1008d970]
mov esi, dword [0x1008d96c]
cmp esi, edi
je 0x1005f604
mov ecx, dword [esi]
call fcn.1006cbe0
add esi, 4
cmp esi, edi
jne 0x1005f5f6
lea eax, [ebp - 0x11]
mov dword [ebp - 0x88], str.vote_cast
push 8
mov dword [ebp - 0x84], str.player_changeclass
mov dword [ebp - 0x80], str.client_beginconnect
mov dword [ebp - 0x7c], str.player_hurt
mov dword [ebp - 0x78], str.achievement_earned
mov dword [ebp - 0x74], str.player_changename
mov dword [ebp - 0x70], str.vote_started
mov dword [ebp - 0x6c], str.teamplay_round_start
mov dword [ebp - 0x68], str.player_spawn
mov dword [ebp - 0x64], str.item_pickup
mov dword [ebp - 0x60], str.client_disconnect
mov dword [ebp - 0x5c], str.game_newmap
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x50], eax
call fcn.1006dab4
mov dword [ebp - 0x54], eax
lea ecx, [ebp - 0x44]
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 0
mov dword [ebp - 0x30], eax
mov eax, ecx
mov dword [ebp - 0x4c], eax
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x34]
nop
mov esi, dword [ebp - 0x38]
mov edx, dword [ebp - 0x3c]
lea eax, [esi + ecx]
test al, 3
jne 0x1005f6e9
lea eax, [ecx + 4]
shr eax, 2
cmp edx, eax
ja 0x1005f6e9
push ecx
lea ecx, [ebp - 0x44]
call fcn.1005ff50
mov ecx, dword [ebp - 0x34]
mov esi, dword [ebp - 0x38]
mov edx, dword [ebp - 0x3c]
lea eax, [edx*4 - 1]
and esi, eax
mov dword [ebp - 0x38], esi
add esi, ecx
mov eax, esi
lea ecx, [edx - 1]
shr eax, 2
and ecx, eax
mov eax, dword [ebp - 0x40]
cmp dword [eax + ecx*4], 0
lea edi, [ecx*4]
jne 0x1005f724
push 0x10
call fcn.1006dab4
mov ecx, dword [ebp - 0x40]
add esp, 4
mov dword [ecx + edi], eax
mov eax, dword [ebp - 0x40]
mov eax, dword [eax + edi]
and esi, 3
mov edx, dword [ebp - 0x30]
lea ecx, [eax + esi*4]
mov eax, dword [edx]
add edx, 4
mov dword [ecx], eax
lea eax, [ebp - 0x58]
mov ecx, dword [ebp - 0x34]
inc ecx
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x34], ecx
cmp edx, eax
jne 0x1005f6c0
mov dword [ebp - 4], 2
test ecx, ecx
je 0x1005f7b2
mov esi, dword [ebp - 0x38]
lea edi, [ecx + esi]
cmp esi, edi
je 0x1005f7b2
mov edx, dword [ebp - 0x3c]
mov eax, esi
shr eax, 2
dec edx
and edx, eax
mov ecx, esi
mov eax, dword [ebp - 0x40]
and ecx, 3
push 0
mov eax, dword [eax + edx*4]
mov edx, dword [eax + ecx*4]
mov ecx, dword [0x10091598]
push edx
push 0x100902c4
mov dword [ebp - 0x30], edx
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [0x10091598]
push dword [ebp - 0x30]
push 0x100902c4
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
call eax
test al, al
je 0x1005fa16
inc esi
cmp esi, edi
jne 0x1005f761
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0xffffffff
call fcn.1005feb0
mov eax, dword [ebp - 0x44]
push 8
push eax
mov dword [ebp - 0x44], 0
call fcn.1006de03
add esp, 8
call fcn.10069cb0
call fcn.10069620
mov ecx, 0x10092ca0
call fcn.10047f70
call fcn.10057af0
call fcn.1005c9a0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x1a
movups xmmword [ecx], xmm0
push str.___Initializing_Hooks..._n
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10007450
push 0xf
push 0x10093f14
call fcn.10069560
add esp, 0x20
xor esi, esi
call fcn.10066420
cmp dword [0x10091688], esi
jne 0x1005f9b7
push esi
push esi
push esi
call dword [sym.imp.KERNEL32.dll_HeapCreate]
test eax, eax
mov dword [0x10091688], eax
mov ecx, 9
cmove esi, ecx
xor eax, eax
mov ecx, 0x10091684
xchg dword [ecx], eax
test esi, esi
jne 0x1005f9c0
mov edi, dword [0x1008db4c]
mov esi, dword [0x1008db48]
cmp esi, edi
je 0x1005f882
mov eax, dword [esi]
mov eax, dword [eax + 4]
call eax
add esi, 4
cmp esi, edi
jne 0x1005f874
call fcn.10066420
cmp dword [0x10091688], 0
je 0x1005f9ac
mov ecx, 1
call fcn.10066320
xor ecx, ecx
mov edx, 0x10091684
xchg dword [edx], ecx
test eax, eax
jne 0x1005f9c0
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10091480]
mov esi, dword [0x100915ac]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10094094]
cmp eax, dword [ecx + 4]
jle 0x1005f901
push 0x10094094
call fcn.1006d9de
add esp, 4
cmp dword [0x10094094], 0xffffffff
jne 0x1005f901
mov eax, dword [esi]
push 0x10094094
mov eax, dword [eax + 0x1a8]
mov dword [0x100940b0], eax
call fcn.1006d994
add esp, 4
push str.net_graph_1
mov ecx, esi
call dword [0x100940b0]
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
push 0x18
movups xmmword [ecx], xmm0
push str.____Finished_Attaching__n
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10007450
push 0xa
push 0x10093f14
call fcn.10069560
mov edi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
add esp, 0x20
mov esi, dword [ebp - 0x48]
nop dword [eax + eax]
cmp dword [0x1009161c], 0
push 0
jne 0x1005f97f
push 0x1007bebc
push 2
push 0x1007bdec
push 0x1007bdf8
call fcn.10007790
add esp, 0x14
mov dword [0x1009161c], eax
push 0x64
call esi
jmp 0x1005f950
push 0x1007be04
push 0x1007bdf8
call fcn.10007790
add esp, 0xc
cmp eax, dword [0x1009161c]
jne 0x1005f9a2
push 0x2e
call edi
test ax, ax
jne 0x1005f9a8
push 0x64
call esi
jmp 0x1005f950
xor dl, dl
jmp 0x1005f9f6
xor eax, eax
mov edx, 0x10091684
xchg dword [edx], eax
jmp 0x1005f9c0
xor eax, eax
mov ecx, 0x10091684
xchg dword [ecx], eax
sub esp, 0x18
mov ecx, esp
push 0x24
push str.____Hooking_initialization_failure__n
xorps xmm0, xmm0
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.10007450
push 0xc
push 0x10093f14
call fcn.10069560
add esp, 0x20
mov dl, 1
call fcn.1005fa40
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1006d89d
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x30]
lea ecx, [ebp - 0x2c]
call fcn.10007400
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x58]
call fcn.100276c0
push 0x1008a58c
lea eax, [ebp - 0x58]
push eax
call sub.VCRUNTIME140.dll__CxxThrowException
int3