Function at 0x1800a2a1c
Capabilities:
Log keystrokes via polling

Disassembly:
jmp 0x1801bbdd0
push rbp
push rsi
push rdi
sub rsp, 0x570
lea rbp, [rsp + 0x30]
lea rdi, [rsp + 0x30]
mov ecx, 0xf0
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rax, qword [0x18023e640]
xor rax, rbp
mov qword [rbp + 0x530], rax
lea rcx, [0x18025a7a0]
call fcn.1800a3557
movzx eax, byte [0x180245d50]
test eax, eax
je 0x1801bbfac
xor r8d, r8d
xor edx, edx
lea rcx, str.Hello_
call fcn.1800a28b4
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x180245b48]
lea rcx, str.Command
call fcn.1800a02df
xorps xmm2, xmm2
xorps xmm1, xmm1
lea rcx, [rbp + 0x304]
call fcn.1800a21f2
mov rdx, rax
lea rcx, str.Execute
call fcn.1800a11f8
movzx eax, al
test eax, eax
je 0x1801bbf81
mov edx, 0x20
lea rcx, [rbp + 8]
call fcn.1800a04b5
lea rcx, [0x180245b48]
call fcn.1800a0528
mov rdx, rax
lea rcx, [rbp + 0x328]
call fcn.1800a1856
nop
mov r8b, 0x20
lea rdx, [rbp + 0x328]
lea rcx, [rbp + 8]
call fcn.1800a131f
nop
lea rcx, [rbp + 0x328]
call fcn.1800a0a55
lea rcx, [rbp + 8]
call fcn.1800a16ad
movzx eax, al
test eax, eax
je 0x1801bbee6
lea rax, [0x180245b48]
mov qword [rbp + 0x518], rax
jmp 0x1801bbef8
xor edx, edx
lea rcx, [rbp + 8]
call fcn.1800a1428
mov qword [rbp + 0x518], rax
mov rax, qword [rbp + 0x518]
mov qword [rbp + 0x368], rax
mov rdx, qword [rbp + 0x368]
lea rcx, [rbp + 0x48]
call fcn.1800a0767
nop
lea rcx, [rbp + 0x48]
call fcn.1800a0528
mov qword [rbp + 0x518], rax
mov rdx, qword [rbp + 0x518]
mov rcx, qword [0x180245d58]
call fcn.1800a1de2
mov qword [rbp + 0x88], rax
lea rcx, [0x180245b48]
call fcn.1800a0528
mov qword [rbp + 0x518], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp + 0x518]
mov rcx, qword [0x180245d58]
call fcn.1800a35f2
nop
lea rcx, [rbp + 0x48]
call fcn.1800a0a55
nop
lea rcx, [rbp + 8]
call fcn.1800a3327
lea rdx, [0x180245b1c]
lea rcx, [0x180224bd4]
call fcn.1800a1702
lea rdx, [0x180245b1d]
lea rcx, [0x180224bd8]
call fcn.1800a1702
call fcn.1800a177a
mov ecx, 0x2d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
and eax, 1
test eax, eax
je 0x1801bbfed
movzx eax, byte [0x180245d50]
test eax, eax
jne 0x1801bbfd6
mov dword [rbp + 0x514], 1
jmp 0x1801bbfe0
mov dword [rbp + 0x514], 0
movzx eax, byte [rbp + 0x514]
mov byte [0x180245d50], al
mov rcx, qword [0x180245d88]
call fcn.1800a3322
mov qword [0x180245ae0], rax
mov ecx, 0x2e
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
and eax, 1
test eax, eax
je 0x1801bc06d
cmp qword [0x180245ae0], 0
jne 0x1801bc06d
movzx eax, byte [0x180245ad6]
mov byte [rbp + 0x514], al
movzx eax, byte [0x180245ad5]
mov byte [rbp + 0x515], al
lea rcx, [0x180245c20]
call fcn.1800a0528
mov qword [rbp + 0x518], rax
movzx r9d, byte [rbp + 0x514]
movzx r8d, byte [rbp + 0x515]
mov rdx, qword [rbp + 0x518]
mov rcx, qword [0x180245d58]
call fcn.1800a35f2
mov ecx, 0x24
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
and eax, 1
test eax, eax
je 0x1801bc154
cmp qword [0x180245ae0], 0
jne 0x1801bc154
lea rdx, str.g_minPlayersForRankedGame_1
lea rcx, [rbp + 0x388]
call fcn.1800a1856
mov qword [rbp + 0x518], rax
mov rax, qword [rbp + 0x518]
mov qword [rbp + 0x520], rax
mov rcx, qword [rbp + 0x520]
call fcn.1800a0528
mov qword [rbp + 0x528], rax
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbp + 0x528]
mov rcx, qword [0x180245d58]
call fcn.1800a35f2
nop
lea rcx, [rbp + 0x388]
call fcn.1800a0a55
lea rdx, str.map_DE_Arctic_Map
lea rcx, [rbp + 0x3c8]
call fcn.1800a1856
mov qword [rbp + 0x518], rax
mov rax, qword [rbp + 0x518]
mov qword [rbp + 0x520], rax
mov rcx, qword [rbp + 0x520]
call fcn.1800a0528
mov qword [rbp + 0x528], rax
mov r9b, 1
xor r8d, r8d
mov rdx, qword [rbp + 0x528]
mov rcx, qword [0x180245d58]
call fcn.1800a35f2
nop
lea rcx, [rbp + 0x3c8]
call fcn.1800a0a55
movzx eax, byte [0x180245b1c]
test eax, eax
je 0x1801bc173
cvtsi2ss xmm0, dword [0x18023e61c]
call fcn.1800a37f0
mov qword [0x180245ad8], rax
movzx eax, byte [0x180245b1d]
test eax, eax
je 0x1801bc375
cmp qword [0x180245ae0], 0
je 0x1801bc375
lea rdx, [rbp + 0xc8]
mov rcx, qword [0x180245d98]
call fcn.1800a1888
nop
lea rax, [rbp + 0xc8]
mov qword [rbp + 0xa8], rax
mov rcx, qword [rbp + 0xa8]
call fcn.1800a3705
mov qword [rbp + 0x108], rax
mov rcx, qword [rbp + 0xa8]
call fcn.1800a2c92
mov qword [rbp + 0x128], rax
jmp 0x1801bc1ec
mov rax, qword [rbp + 0x108]
add rax, 8
mov qword [rbp + 0x108], rax
mov rax, qword [rbp + 0x128]
cmp qword [rbp + 0x108], rax
je 0x1801bc369
mov rax, qword [rbp + 0x108]
mov rax, qword [rax]
mov qword [rbp + 0x148], rax
cmp qword [rbp + 0x148], 0
je 0x1801bc22b
mov rax, qword [0x180245ae0]
cmp qword [rbp + 0x148], rax
jne 0x1801bc22d
jmp 0x1801bc1da
mov rcx, qword [rbp + 0x148]
call fcn.1800a0203
mov qword [rbp + 0x168], rax
cmp qword [rbp + 0x168], 0
je 0x1801bc25d
mov rcx, qword [rbp + 0x168]
call fcn.1800a1059
movzx eax, al
test eax, eax
je 0x1801bc262
jmp 0x1801bc1da
mov rax, qword [0x180245ad8]
cmp qword [rbp + 0x148], rax
jne 0x1801bc2bd
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
mov r8d, 0xff
xor edx, edx
lea rcx, [rbp + 0x404]
call fcn.1800a13ab
lea rcx, [rbp + 0x4a0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rdx, [rbp + 0x4a0]
mov rcx, qword [rbp + 0x148]
call fcn.1800a0f41
jmp 0x1801bc364
mov rcx, qword [rbp + 0x148]
call fcn.1800a10db
movzx eax, al
test eax, eax
je 0x1801bc31e
mov dword [rsp + 0x20], 0xff
mov r9d, 0xff
mov r8d, 0xff
mov edx, 0xff
lea rcx, [rbp + 0x434]
call fcn.1800a13ab
lea rcx, [rbp + 0x4d0]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rdx, [rbp + 0x4d0]
mov rcx, qword [rbp + 0x148]
call fcn.1800a0f41
jmp 0x1801bc364
mov dword [rsp + 0x20], 0xff
xor r9d, r9d
xor r8d, r8d
mov edx, 0xff
lea rcx, [rbp + 0x464]
call fcn.1800a13ab
lea rcx, [rbp + 0x500]
mov rdi, rcx
mov rsi, rax
mov ecx, 0x10
rep movsb byte [rdi], byte [rsi]
lea rdx, [rbp + 0x500]
mov rcx, qword [rbp + 0x148]
call fcn.1800a0f41
jmp 0x1801bc1da
lea rcx, [rbp + 0xc8]
call fcn.1800a2d8c
mov ecx, 0x28
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x1801bc393
mov eax, dword [0x18023e61c]
dec eax
mov dword [0x18023e61c], eax
mov ecx, 0x26
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
test eax, eax
je 0x1801bc3b1
mov eax, dword [0x18023e61c]
inc eax
mov dword [0x18023e61c], eax
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cwde
and eax, 1
test eax, eax
je 0x1801bc3cd
mov byte [0x180245ad3], 1
jmp 0x1801bc3d4
mov byte [0x180245ad3], 0
call fcn.1800a17a7
lea rcx, [rbp - 0x30]
lea rdx, [0x1802212b0]
call fcn.1800a2c42
mov rcx, qword [rbp + 0x530]
xor rcx, rbp
call fcn.1800a19b9
lea rsp, [rbp + 0x540]
pop rdi
pop rsi
pop rbp
ret