Function at 0x1800af9c0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r14
lea rbp, [rsp - 0x3f]
sub rsp, 0xf0
mov rax, qword [0x18012c040]
xor rax, rsp
mov qword [rbp + 0x2f], rax
mov r14, r9
mov qword [rbp + 0x1f], r9
mov rdi, qword [rbp + 0x7f]
mov qword [rbp + 0x27], rdi
xor r12d, r12d
mov rcx, r9
mov rbx, qword [r9 + 0x18]
cmp rbx, 0xf
jbe 0x1800afa10
mov rcx, qword [r9]
mov qword [rsp + 0x20], reloc.WS2_32.dll_inet_addr
lea r9, str.AthenaLobby
xor r8d, r8d
mov rdx, qword [r14 + 0x10]
call fcn.18000ece0
movzx esi, byte [0x18012f392]
cmp rax, 0xffffffffffffffff
je 0x1800afa83
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800afa46
mov rcx, qword [rdi]
mov qword [rsp + 0x20], 0xc
lea r9, str.OnBeginIntro
xor r8d, r8d
mov rdx, qword [rdi + 0x10]
call fcn.18000ece0
cmp rax, 0xffffffffffffffff
je 0x1800afa83
test sil, sil
je 0x1800afa83
movsd xmm0, qword [0x1801144a8]
comisd xmm0, xmmword [0x18012dd68]
ja 0x1800afb5c
mov rcx, r14
cmp rbx, 0xf
jbe 0x1800afa8f
mov rcx, qword [r14]
mov qword [rsp + 0x20], reloc.WS2_32.dll_inet_addr
lea r9, str.AthenaLobby
xor r8d, r8d
mov rdx, qword [r14 + 0x10]
call fcn.18000ece0
cmp rax, 0xffffffffffffffff
je 0x1800afaee
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800afabe
mov rcx, qword [rdi]
mov qword [rsp + 0x20], 9
lea r9, str.OnSuccess
xor r8d, r8d
mov rdx, qword [rdi + 0x10]
call fcn.18000ece0
cmp rax, 0xffffffffffffffff
je 0x1800afaee
test sil, sil
je 0x1800afaee
cmp dword [0x18012dd70], 0xf
jl 0x1800afb5c
mov rcx, r14
cmp rbx, 0xf
jbe 0x1800afafa
mov rcx, qword [r14]
mov qword [rsp + 0x20], reloc.WS2_32.dll_inet_addr
lea r9, str.AthenaLobby
xor r8d, r8d
mov rdx, qword [r14 + 0x10]
call fcn.18000ece0
cmp rax, 0xffffffffffffffff
je 0x1800b0085
mov rcx, rdi
cmp qword [rdi + 0x18], 0xf
jbe 0x1800afb2d
mov rcx, qword [rdi]
mov qword [rsp + 0x20], 0x2b
lea r9, str.DynamicHandleLoadingScreenVisibilityChanged
xor r8d, r8d
mov rdx, qword [rdi + 0x10]
call fcn.18000ece0
cmp rax, 0xffffffffffffffff
je 0x1800b0085
test sil, sil
je 0x1800b0085
cmp byte [0x18012f390], 0
jne 0x1800afea1
mov byte [0x18012f390], 1
mov cl, 1
call fcn.180006930
call fcn.1800a2750
mov r8, qword [0x18012dd60]
test r8, r8
je 0x1800afbbd
cmp qword [0x18012e710], 0
je 0x1800afb9b
mov rax, qword [0x18012e6b0]
jmp 0x1800afba5
movsxd rax, dword [0x18012c4d0]
add rax, r8
mov rbx, qword [rax]
test rbx, rbx
je 0x1800afbbd
movsxd rax, dword [0x18012c4d8]
mov rbx, qword [rax + rbx]
test rbx, rbx
jne 0x1800afbc0
mov rbx, r12
lea rdx, [0x18012c4a0]
cmp qword [0x18012c4b8], 7
cmova rdx, qword [0x18012c4a0]
cmp word [rdx], 0
je 0x1800afbf3
mov rcx, 0xffffffffffffffff
inc rcx
cmp word [rdx + rcx*2], 0
jne 0x1800afbe4
inc rcx
jmp 0x1800afbf6
mov rcx, r12
mov dword [rbp - 0x69], ecx
mov dword [rbp - 0x65], ecx
mov rax, r12
test ecx, ecx
cmovne rax, rdx
mov qword [rbp - 0x71], rax
movaps xmm0, xmmword [rbp - 0x71]
movdqa xmmword [rbp - 0x41], xmm0
mov rdx, qword [0x18012e9b8]
test rdx, rdx
jne 0x1800afc6e
xorps xmm0, xmm0
movups xmmword [rbp - 0x61], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x51], xmm1
mov r8d, 3
lea rdx, [0x180111c84]
lea rcx, [rbp - 0x61]
call fcn.180013310
nop
lea rdx, [rbp - 0x61]
mov rcx, rbx
call fcn.18009d1a0
mov qword [0x18012e9b8], rax
lea rcx, [rbp - 0x61]
call fcn.180027960
mov r8, qword [0x18012dd60]
mov rdx, qword [0x18012e9b8]
test rbx, rbx
je 0x1800afc93
test rdx, rdx
je 0x1800afc93
lea r8, [rbp - 0x41]
mov rcx, rbx
call qword [0x18012e6d8]
mov r8, qword [0x18012dd60]
mov rdx, qword [0x18012e9b8]
test r8, r8
je 0x1800afccd
cmp qword [0x18012e710], 0
je 0x1800afcab
mov rax, qword [0x18012e6b0]
jmp 0x1800afcb5
movsxd rax, dword [0x18012c4d0]
add rax, r8
mov rbx, qword [rax]
test rbx, rbx
je 0x1800afccd
movsxd rax, dword [0x18012c4d8]
mov rbx, qword [rax + rbx]
test rbx, rbx
jne 0x1800afcd0
mov rbx, r12
mov dword [rbp - 0x69], reloc.WS2_32.dll_socket
mov dword [rbp - 0x65], reloc.WS2_32.dll_socket
lea rax, str._nWelcome_to_CraniumV1_
mov qword [rbp - 0x71], rax
movaps xmm0, xmmword [rbp - 0x71]
movdqa xmmword [rbp - 0x71], xmm0
test rdx, rdx
jne 0x1800afd40
xorps xmm0, xmm0
movups xmmword [rbp - 0x61], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x51], xmm1
mov r8d, 3
lea rdx, [0x180111c84]
lea rcx, [rbp - 0x61]
call fcn.180013310
nop
lea rdx, [rbp - 0x61]
mov rcx, rbx
call fcn.18009d1a0
mov qword [0x18012e9b8], rax
lea rcx, [rbp - 0x61]
call fcn.180027960
mov rdx, qword [0x18012e9b8]
test rbx, rbx
je 0x1800afd57
test rdx, rdx
je 0x1800afd57
lea r8, [rbp - 0x71]
mov rcx, rbx
call qword [0x18012e6d8]
call fcn.18002a8d0
call fcn.1800b0d00
xorps xmm0, xmm0
movups xmmword [rbp - 0x61], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x51], xmm1
mov r8d, socket
lea rdx, str.Welcome_to_CraniumV1_
lea rcx, [rbp - 0x61]
call fcn.180013310
nop
mov byte [rsp + 0x30], 0
mov dword [rbp - 0x71], r12d
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rbx, [0x18012f3e8]
mov qword [rsp + 0x20], rbx
lea r9, [0x18012f3d8]
lea r8, [rbp - 0x61]
lea rdx, [rbp - 0x71]
call fcn.180025bb0
nop
lea rcx, [rbp - 0x61]
call fcn.180027960
lea rcx, [rbp + 0xf]
call fcn.1800c4e10
xor r8d, r8d
lea rdx, [rbp - 0x11]
mov rcx, rax
call fcn.18009daf0
nop
lea rcx, str.Current_Engine_Game_Version:_
mov qword [rbp - 0x41], rcx
mov qword [rbp - 0x39], 0x1f
mov rcx, rax
cmp qword [rax + 0x18], 0xf
jbe 0x1800afdfd
mov rcx, qword [rax]
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x71], rcx
mov qword [rbp - 0x69], rax
movups xmm0, xmmword [rbp - 0x71]
movups xmmword [rbp - 0x59], xmm0
movabs rax, 0xc000000000000000
mov qword [rbp - 0x61], rax
mov qword [rbp - 0x71], 1
lea rax, [rbp - 0x61]
mov qword [rbp - 0x69], rax
movaps xmm0, xmmword [rbp - 0x71]
movdqa xmmword [rbp - 0x71], xmm0
movaps xmm1, xmmword [rbp - 0x41]
movdqa xmmword [rbp - 0x41], xmm1
lea r8, [rbp - 0x71]
lea rdx, [rbp - 0x41]
lea rcx, [rbp - 0x31]
call fcn.18001fcd0
nop
mov byte [rsp + 0x30], 0
mov dword [rbp - 0x71], r12d
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea r9, [0x18012f3d8]
lea r8, [rbp - 0x31]
lea rdx, [rbp - 0x71]
call fcn.180025bb0
nop
lea rcx, [rbp - 0x31]
call fcn.180027960
nop
lea rcx, [rbp - 0x11]
call fcn.180027960
cmp byte [0x18012de51], 0
je 0x1800afea1
call fcn.18004bac0
xor ecx, ecx
call fcn.1800b59b0
call fcn.180042960
mov edx, 1
lea rcx, [rbp - 0x31]
call fcn.1800b15b0
mov rbx, rax
xor edx, edx
lea rcx, [rbp - 0x11]
call fcn.1800b1180
nop
mov r9, rbx
mov r8, rax
lea rcx, [rbp - 0x61]
call fcn.180036f10
nop
lea rcx, [rbp - 0x11]
call fcn.1800279c0
nop
lea rcx, [rbp - 0x31]
call fcn.1800279c0
mov rdx, qword [0x18012f218]
cmp rdx, 7
jbe 0x1800aff33
mov rcx, qword [0x18012f200]
lea rdx, [rdx*2 + 2]
cmp rdx, 0x1000
jb 0x1800aff2e
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1800affc6
mov rcx, r8
call fcn.1800d5198
movups xmm0, xmmword [rbp - 0x61]
movaps xmmword [0x18012f200], xmm0
movups xmm1, xmmword [rbp - 0x51]
movaps xmmword [0x18012f210], xmm1
movdqa xmm0, xmmword [0x180114850]
movdqu xmmword [rbp - 0x51], xmm0
mov word [rbp - 0x61], r12w
lea rcx, [rbp - 0x61]
call fcn.1800279c0
mov rax, qword [0x18012f280]
cmp rax, qword [0x18012f288]
je 0x1800aff7b
mov qword [0x18012f288], rax
call fcn.1800c9260
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x61], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x51], xmm1
mov r8d, 0x11
lea rdx, str.GameplayAbilities
lea rcx, [rbp - 0x61]
call fcn.180013310
nop
test rbx, rbx
je 0x1800affcd
lea rdx, [rbp - 0x61]
mov rcx, rbx
call fcn.180052b90
test eax, eax
jle 0x1800affcd
movsxd rsi, eax
add rsi, rbx
jmp 0x1800affd0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov rsi, r12
lea rcx, [rbp - 0x61]
call fcn.180027960
mov rbx, qword [rsi]
movsxd rax, dword [rsi + 8]
lea rsi, [rbx + rax*8]
cmp rbx, rsi
je 0x1800b0080
nop dword [rax]
cmp dword [0x18012dd70], 5
jge 0x1800b0044
mov rcx, qword [rbx]
test rcx, rcx
jne 0x1800b0006
mov rax, r12
jmp 0x1800b0011
movsxd rax, dword [0x18012c3bc]
mov rax, qword [rax + rcx]
mov qword [rbp - 0x71], rax
mov rdx, qword [0x18012f288]
cmp rdx, qword [0x18012f290]
je 0x1800b0032
mov qword [rdx], rax
add qword [0x18012f288], 8
jmp 0x1800b0073
lea r8, [rbp - 0x71]
lea rcx, [0x18012f280]
call fcn.18000e110
jmp 0x1800b0073
mov rdx, qword [0x18012f288]
cmp rdx, qword [0x18012f290]
je 0x1800b0064
mov rax, qword [rbx]
mov qword [rdx], rax
add qword [0x18012f288], 8
jmp 0x1800b0073
mov r8, rbx
lea rcx, [0x18012f280]
call fcn.18000e110
add rbx, 8
cmp rbx, rsi
jne 0x1800afff0
call fcn.18003ef40
mov ecx, WSACleanup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800b00cb
cmp byte [0x18012f395], 0
jne 0x1800b00cb
cmp byte [0x18012f392], 0
je 0x1800b00cb
xorps xmm0, xmm0
movups xmmword [rbp - 0x61], xmm0
mov qword [rbp - 0x51], r12
mov qword [rbp - 0x49], 7
mov word [rbp - 0x61], r12w
xor edx, edx
lea rcx, [rbp - 0x61]
call fcn.180040940
nop
mov rcx, r14
call fcn.180027960
nop
mov rcx, rdi
call fcn.180027960
mov rcx, qword [rbp + 0x2f]
xor rcx, rsp
call fcn.1800d4da0
lea r11, [rsp + 0xf0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop r12
pop rbp
ret