Function at 0x180029ed0
Capabilities:
Log keystrokes via polling
Terminate process

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
sub rsp, 0x30
cmp byte [rcx + 1], 0
mov rbx, rcx
je 0x180029efa
lea rcx, str.GTA5.exe
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [rax + 0x19b1d70], 0xbf800000
cmp byte [rbx + 2], 0
je 0x180029f0a
mov edx, reloc.WLDAP32.dll_Ordinal_27
call fcn.18002cb10
xor esi, esi
cmp byte [rbx + 3], sil
je 0x180029f74
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
movabs rcx, 0xa6294919e56ff02a
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
movabs rcx, 0xa0ebb943c300e693
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
cmp byte [rbx + 4], sil
je 0x180029fa3
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180029fa3
mov ecx, reloc.WS2_32.dll_WSAStartup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180029fa3
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
movzx edx, byte [rbx + 5]
movaps xmmword [rsp + 0x20], xmm6
call fcn.18002da80
cmp byte [rbx + 6], sil
je 0x180029fd6
call fcn.180026540
movabs rcx, 0xd220bdd222ac4a1e
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.1800263e0
call fcn.180026540
cmp byte [rbx + 8], sil
je 0x18002a031
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
movabs rcx, 0xbf286c554784f3df
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
jmp 0x18002a07c
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
movabs rcx, 0xbf286c554784f3df
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], esi
inc dword [rax + 8]
movabs rcx, 0x1098355a16064bb3
call fcn.1800263e0
call fcn.180026540
cmp byte [rbx + 9], sil
je 0x18002a13c
mov qword [rsp + 0x48], rdi
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 1
movabs rcx, 0xd821490579791273
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
lea rdi, str.scr_rcbarry2
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov qword [rcx + rdx*8], rdi
movabs rcx, 0xb80d8756b4668ab6
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov rcx, qword [rax + 0x10]
mov edx, dword [rax + 8]
mov qword [rcx + rdx*8], rdi
movabs rcx, 0x6c38af3693a69a91
mov rdi, qword [rsp + 0x48]
jmp 0x18002a160
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov rcx, qword [rax + 0x10]
mov edx, dword [rax + 8]
mov dword [rcx + rdx*8], esi
movabs rcx, 0xd821490579791273
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
movzx edx, byte [rbx + 0x18]
call fcn.18002cc20
movzx edx, byte [rbx + 0x19]
mov rcx, rbx
call fcn.18002d690
cmp byte [rbx + 0x20], sil
je 0x18002a1c6
call fcn.180026540
movabs rcx, 0xf4f2c0d4ee209e20
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.1800263e0
call fcn.180026540
call fcn.180026540
movabs rcx, 0x9e4cfff989258472
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.1800263e0
call fcn.180026540
cmp byte [rbx + 0x21], sil
je 0x18002a1d6
mov edx, 0x50
call fcn.18002cb10
cmp byte [rbx + 0x22], sil
je 0x18002a214
movss xmm6, dword [0x1801e0b28]
movss xmm1, dword [0x1801e0cf0]
movaps xmm2, xmm6
movss xmm0, dword [0x1801e0cec]
call fcn.18002cb90
movss xmm1, dword [0x1801e0c38]
movaps xmm2, xmm6
movss xmm0, dword [0x1801e0c34]
call fcn.18002cb90
movss xmm6, dword [rbx + 0xc]
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm6
movabs rcx, 0x643e26ea6e024d92
inc dword [rax + 8]
call fcn.1800263e0
movss xmm6, dword [rbx + 0x10]
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm6
movabs rcx, 0xb96b00e976be977f
inc dword [rax + 8]
call fcn.1800263e0
movss xmm6, dword [rbx + 0x14]
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm6
movabs rcx, 0xee09ecedbabe47fc
inc dword [rax + 8]
call fcn.1800263e0
call fcn.180026540
movaps xmm6, xmmword [rsp + 0x20]
cmp byte [rbx + 0xa], sil
je 0x18002a2dd
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 0x3f000000
jmp 0x18002a2fb
call fcn.180026540
mov dword [rax + 8], esi
mov dword [rax + 0x18], esi
call fcn.180026540
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 0x3f800000
inc dword [rax + 8]
movabs rcx, 0x1d408577d440e81e
call fcn.1800263e0
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rsi
jmp fcn.180026540