Function at 0x14004ff50
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm9
movaps xmmword [rax - 0x48], xmm10
movaps xmmword [rax - 0x58], xmm11
movaps xmmword [rax - 0x68], xmm13
mov rax, qword [0x14014eec0]
xor rax, rsp
mov qword [rbp - 0x11], rax
mov ebx, 2
movsxd rax, dword [0x14014ebcc]
cmp eax, 7
ja case.0x14004ffb7.0
lea rdx, [0x140000000]
mov ecx, dword [rdx + rax*4 + 0x50c80]
add rcx, rdx
jmp rcx
mov dword [0x140154fd0], ebx
jmp 0x140050013
mov dword [0x140154fd0], 5
jmp 0x140050013
mov dword [0x140154fd0], 6
jmp 0x140050013
mov dword [0x140154fd0], 0x10
jmp 0x140050013
mov dword [0x140154fd0], 0x11
jmp 0x140050013
mov dword [0x140154fd0], 0x12
jmp 0x140050013
mov dword [0x140154fd0], 0x14
jmp 0x140050013
mov dword [0x140154fd0], 1
cmp byte [0x14014eccc], 0
je 0x140050128
call fcn.14000b450
cvttss2si edx, dword [rax + 0xd0]
lea rcx, [rbp - 0x31]
call fcn.14003c0d0
nop
mov dword [rbp - 0x39], 0x41200000
mov dword [rbp - 0x35], 0x40a00000
lea rdx, [rbp - 0x39]
mov ecx, ebx
call fcn.140012cd0
mov qword [rbp - 0x39], 0
mov dword [rbp - 0x49], 0x41200000
mov dword [rbp - 0x45], 0x41200000
lea r8, [rbp - 0x39]
xor edx, edx
lea rcx, [rbp - 0x49]
call fcn.1400167a0
xor edx, edx
mov r8d, reloc.WS2_32.dll_WSAGetLastError
lea rcx, str.watermark
call fcn.140004a80
mov ecx, 1
call fcn.1400125e0
mov qword [rbp - 0x49], 0
lea rdx, [rbp - 0x49]
mov ecx, recv
call fcn.140012cd0
mov dword [rbp - 0x49], 0
mov dword [rbp - 0x45], 0x40400000
lea rcx, [rbp - 0x49]
call fcn.140036b00
lea rdx, [rbp - 0x31]
cmp qword [rbp - 0x19], 0xf
cmova rdx, qword [rbp - 0x31]
lea rcx, str.Mushroom.cc_Free___s_FPS
call fcn.1400389c0
mov ecx, 1
call fcn.1400125e0
call fcn.140009560
nop
mov rdx, qword [rbp - 0x19]
cmp rdx, 0xf
jbe 0x140050128
inc rdx
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050123
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140050123
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400a3cc0
mov ecx, 0x2d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x140050149
cmp byte [0x14014ecb8], 0
sete al
mov byte [0x14014ecb8], al
jmp 0x140050150
movzx eax, byte [0x14014ecb8]
test al, al
je 0x140050c3e
mov qword [rbp - 0x49], 0
lea rdx, [rbp - 0x49]
mov ecx, ebx
call fcn.140012cd0
xor edx, edx
mov r8d, 0x2b
lea rcx, str.menu
call fcn.140004a80
mov ecx, 1
call fcn.1400125e0
mov rcx, qword [0x140154d20]
mov rax, qword [rcx + 0x3e38]
mov byte [rax + 0x90], 1
mov rsi, qword [rcx + 0x3e38]
call fcn.14000bc50
lea rcx, [rbp - 0x39]
call fcn.14000bc80
mov dword [rbp - 0x49], 0x44228000
mov dword [rbp - 0x45], 0x44098000
xor edx, edx
lea rcx, [rbp - 0x49]
call fcn.140016b80
cmp byte [0x14014ed70], 0
je 0x1400501da
xorps xmm1, xmm1
jmp 0x1400501e2
movss xmm1, dword [0x1400aad08]
subss xmm1, dword [0x14015509c]
mulss xmm1, dword [0x1400aad00]
addss xmm1, dword [0x14015509c]
movss dword [0x14015509c], xmm1
mov qword [rbp - 0x49], 0
lea rcx, [rbp - 0x49]
call fcn.140016350
movss xmm1, dword [rsi + 0x1c]
movss xmm0, dword [0x14015509c]
mulss xmm0, dword [0x1400abf3c]
addss xmm0, dword [0x1400aad28]
movss dword [rbp - 0x49], xmm0
movss dword [rbp - 0x45], xmm1
mov r9d, 0x80
xor r8d, r8d
lea rdx, [rbp - 0x49]
lea rcx, str.navbar
call fcn.140007100
movss xmm0, dword [0x1400b2bd0]
call fcn.140016420
mov dword [rbp - 0x49], 0
mov dword [rbp - 0x45], 0x41800000
lea rdx, [rbp - 0x49]
mov ecx, recv
call fcn.140012cd0
cmp dword [0x140155098], 0
sete r8b
lea rdx, str.Page_1
lea rcx, [0x1400ab92c]
call fcn.140001fd0
test al, al
je 0x1400502a8
xor eax, eax
mov dword [0x140155098], eax
jmp 0x1400502ae
mov eax, dword [0x140155098]
cmp eax, 1
sete r8b
lea rdx, str.Page_2
lea rcx, [0x1400ab930]
call fcn.140001fd0
test al, al
je 0x1400502d9
mov eax, 1
mov dword [0x140155098], eax
jmp 0x1400502df
mov eax, dword [0x140155098]
cmp eax, 2
sete r8b
lea rdx, str.Page_4
lea rcx, [0x1400ab938]
call fcn.140001fd0
test al, al
je 0x140050305
mov dword [0x140155098], ebx
jmp 0x14005030b
mov ebx, dword [0x140155098]
cmp ebx, 3
sete r8b
lea rdx, str.Page_5
lea rcx, [0x1400ab93c]
call fcn.140001fd0
test al, al
je 0x140050333
mov dword [0x140155098], 3
mov ecx, 1
call fcn.1400125e0
call fcn.140009840
movss xmm10, dword [0x1400b2bcc]
mov dword [rbp - 0x49], 0x42a20000
mov dword [rbp - 0x45], 0x41c80000
lea rcx, [rbp - 0x49]
call fcn.140016350
call fcn.140007570
movss xmm11, dword [0x1400ac024]
movss xmm13, dword [0x1400aad04]
movss xmm9, dword [0x1400b2bd4]
mov eax, dword [0x140155098]
test eax, eax
jne 0x140050664
call fcn.14000b450
mov rcx, qword [rax + 0x48]
mov rcx, qword [rcx + 0x50]
mov rcx, qword [rcx + 0x10]
call fcn.1400128b0
lea rcx, str.Aimbot
call fcn.1400389c0
call fcn.1400124c0
movss xmm1, dword [rsi + 0x1c]
subss xmm1, dword [rsi + 0xdc]
addss xmm1, dword [rsi + 0x14]
movss xmm0, dword [rsi + 0x18]
subss xmm0, xmm10
movss dword [rbp - 0x49], xmm0
movss dword [rbp - 0x45], xmm1
mov r9d, 0x80
xor r8d, r8d
lea rdx, [rbp - 0x49]
lea rcx, str.main
call fcn.140007100
call fcn.140007570
call fcn.14000bcc0
movaps xmm6, xmm0
subss xmm6, xmm11
mulss xmm6, xmm13
call fcn.14000ba70
movss xmm1, dword [rax + 0x4c]
mulss xmm1, xmm13
subss xmm6, xmm1
unpcklps xmm6, xmm9
movq rdx, xmm6
lea rcx, str.Configure
call fcn.140001d30
lea rdx, [0x140155000]
lea rcx, str.Mouse_Aim
call fcn.140035d00
lea rdx, [0x140155001]
lea rcx, str.Visible_Only
call fcn.140035d00
lea rdx, [0x140155002]
lea rcx, str.Prediction
call fcn.140035d00
lea rdx, [0x140155003]
lea rcx, str.Show_Fov
call fcn.140035d00
call fcn.140001fa0
call fcn.140009f30
movss xmm1, dword [0x1400aad1c]
xorps xmm0, xmm0
call fcn.140015aa0
call fcn.140007570
call fcn.14000bcc0
movaps xmm6, xmm0
subss xmm6, xmm11
mulss xmm6, xmm13
call fcn.14000ba70
movss xmm1, dword [rax + 0x4c]
mulss xmm1, xmm13
subss xmm6, xmm1
unpcklps xmm6, xmm9
movq rdx, xmm6
lea rcx, str.Settings
call fcn.140001d30
mov dword [rsp + 0x28], 0
lea rbx, str._f__
mov qword [rsp + 0x20], rbx
movss xmm3, dword [0x1400b2bd8]
movss xmm2, dword [0x1400abf24]
lea rdx, [0x14014ecbc]
lea rcx, str.Fov_Size2
call fcn.140038350
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], rbx
movss xmm3, dword [0x1400aad28]
movss xmm2, dword [0x1400aad0c]
lea rdx, [0x14014ecc0]
lea rcx, str.Smoothing2
call fcn.140038350
mov dword [rsp + 0x20], 0xffffffff
mov r9d, 8
lea r8, str.Left_Mouse_Button
lea rdx, [0x14014ebcc]
lea rcx, str.Aimkey
call fcn.1400369f0
mov eax, dword [0x14014ecc4]
lea r15, str.Head
cmp eax, 7
je 0x1400505a7
cmp eax, 0x43
je 0x14005059e
cmp eax, 0x45
je 0x140050595
lea rdx, str.Unknown
cmp eax, 0x6e
cmove rdx, r15
jmp 0x1400505ae
lea rdx, str.Pelvis
jmp 0x1400505ae
lea rdx, str.Neck
jmp 0x1400505ae
lea rdx, str.Chest
xor r8d, r8d
lea rcx, str.Bone
call fcn.140034850
test al, al
je 0x14005064a
lea rdi, str.nC_aE
lea r14, [0x14014ec20]
nop dword [rax]
nop word [rax + rax]
mov ebx, dword [rdi]
mov qword [rbp - 0x49], 0
cmp dword [0x14014ecc4], ebx
sete dl
cmp ebx, 7
je 0x140050624
cmp ebx, 0x43
je 0x14005061b
cmp ebx, 0x45
je 0x140050612
lea rcx, str.Unknown
cmp ebx, 0x6e
cmove rcx, r15
jmp 0x14005062b
lea rcx, str.Pelvis
jmp 0x14005062b
lea rcx, str.Neck
jmp 0x14005062b
lea rcx, str.Chest
lea r9, [rbp - 0x49]
xor r8d, r8d
call fcn.1400375e0
test al, al
je 0x140050641
mov dword [0x14014ecc4], ebx
add rdi, 4
cmp rdi, r14
jne 0x1400505e0
call fcn.140036bb0
call fcn.140001fa0
call fcn.140009f30
call fcn.140009840
mov eax, dword [0x140155098]
cmp eax, 1
jne 0x14005093e
call fcn.14000b450
mov rcx, qword [rax + 0x48]
mov rcx, qword [rcx + 0x50]
mov rcx, qword [rcx + 0x10]
call fcn.1400128b0
lea rcx, str.Visuals
call fcn.1400389c0
call fcn.1400124c0
movss xmm1, dword [rsi + 0x1c]
subss xmm1, dword [rsi + 0xdc]
addss xmm1, dword [rsi + 0x14]
movss xmm0, dword [rsi + 0x18]
subss xmm0, xmm10
movss dword [rbp - 0x49], xmm0
movss dword [rbp - 0x45], xmm1
mov r9d, 0x80
xor r8d, r8d
lea rdx, [rbp - 0x49]
lea rcx, str.main
call fcn.140007100
call fcn.140007570
call fcn.14000bcc0
movaps xmm6, xmm0
subss xmm6, xmm11
mulss xmm6, xmm13
call fcn.14000ba70
movss xmm1, dword [rax + 0x4c]
mulss xmm1, xmm13
subss xmm6, xmm1
unpcklps xmm6, xmm9
movq rdx, xmm6
lea rcx, str.Configure
call fcn.140001d30
lea rdx, [0x140155004]
lea rcx, [0x1400abfe8]
call fcn.140035d00
lea rdx, [0x140155005]
lea rcx, str.Skeleton
call fcn.140035d00
lea rdx, [0x140155007]
lea rcx, str.Platform
call fcn.140035d00
lea rdx, [0x140155006]
lea rcx, str.Username
call fcn.140035d00
lea rdx, [0x140155008]
lea rcx, str.Distance
call fcn.140035d00
lea rdx, [0x140155009]
lea rcx, str.Weapon
call fcn.140035d00
lea rdx, [0x14015500b]
lea rcx, str.Indication_Arrows
call fcn.140035d00
lea rdx, [0x14015500c]
lea rcx, str.Radar
call fcn.140035d00
call fcn.140001fa0
call fcn.140009f30
movss xmm1, dword [0x1400aad1c]
xorps xmm0, xmm0
call fcn.140015aa0
call fcn.140007570
call fcn.14000bcc0
movaps xmm6, xmm0
subss xmm6, xmm11
mulss xmm6, xmm13
call fcn.14000ba70
movss xmm1, dword [rax + 0x4c]
mulss xmm1, xmm13
subss xmm6, xmm1
unpcklps xmm6, xmm9
movq rdx, xmm6
lea rcx, str.Settings
call fcn.140001d30
lea rdx, [0x14015500d]
lea rcx, str.Ignore_Team
call fcn.140035d00
lea rdx, [0x14015500e]
lea rcx, str.Ignore_Downed
call fcn.140035d00
lea rdx, [0x14015500f]
lea rcx, str.Fill_Box
call fcn.140035d00
lea rdx, [0x140155010]
lea rcx, str.Outline
call fcn.140035d00
mov dword [rsp + 0x28], 0
lea rax, [0x1400b1110]
mov qword [rsp + 0x20], rax
movss xmm3, dword [0x1400abf24]
movss xmm2, dword [0x1400aad08]
lea rdx, [0x14014ecc8]
lea rcx, str.Thickness
call fcn.140038350
mov ecx, dword [0x140155014]
test ecx, ecx
je 0x1400508a7
cmp ecx, 1
je 0x14005089e
lea rdx, str.Unknown
jmp 0x1400508ae
lea rdx, [0x1400b0ae8]
jmp 0x1400508ae
lea rdx, str.Corner
xor r8d, r8d
lea rcx, str.Box_Type
call fcn.140034850
test al, al
je 0x140050924
lea rdi, [0x14014ec20]
lea r14, [0x14014ec28]
nop
mov ebx, dword [rdi]
mov qword [rbp - 0x49], 0
cmp dword [0x140155014], ebx
sete dl
test ebx, ebx
je 0x1400508fe
cmp ebx, 1
je 0x1400508f5
lea rcx, str.Unknown
jmp 0x140050905
lea rcx, [0x1400b0ae8]
jmp 0x140050905
lea rcx, str.Corner
lea r9, [rbp - 0x49]
xor r8d, r8d
call fcn.1400375e0
test al, al
je 0x14005091b
mov dword [0x140155014], ebx
add rdi, 4
cmp rdi, r14
jne 0x1400508d0
call fcn.140036bb0
call fcn.140001fa0
call fcn.140009f30
call fcn.140009840
mov eax, dword [0x140155098]
cmp eax, 2
jne 0x140050a2f
call fcn.14000b450
mov rcx, qword [rax + 0x48]
mov rcx, qword [rcx + 0x50]
mov rcx, qword [rcx + 0x10]
call fcn.1400128b0
lea rcx, str.Miscellaneous
call fcn.1400389c0
call fcn.1400124c0
movss xmm1, dword [rsi + 0x1c]
subss xmm1, dword [rsi + 0xdc]
addss xmm1, dword [rsi + 0x14]
movss xmm0, dword [rsi + 0x18]
subss xmm0, xmm10
movss dword [rbp - 0x49], xmm0
movss dword [rbp - 0x45], xmm1
mov r9d, 0x80
xor r8d, r8d
lea rdx, [rbp - 0x49]
lea rcx, str.main
call fcn.140007100
call fcn.140007570
call fcn.14000bcc0
movaps xmm6, xmm0
subss xmm6, dword [0x1400b2bc8]
call fcn.14000ba70
subss xmm6, dword [rax + 0x4c]
unpcklps xmm6, xmm9
movq rdx, xmm6
lea rcx, str.Configure
call fcn.140001d30
lea rdx, [0x14014eccc]
lea rcx, str.Watermark
call fcn.140035d00
lea rdx, [0x140155018]
lea rcx, str.Crosshair
call fcn.140035d00
lea rdx, [0x140155019]
lea rcx, str.V_Sync
call fcn.140035d00
call fcn.140001fa0
call fcn.140009f30
call fcn.140009840
mov eax, dword [0x140155098]
cmp eax, 3
jne 0x140050c34
call fcn.14000b450
mov rcx, qword [rax + 0x48]
mov rcx, qword [rcx + 0x50]
mov rcx, qword [rcx + 0x10]
call fcn.1400128b0
lea rcx, str.Config
call fcn.1400389c0
call fcn.1400124c0
movss xmm1, dword [rsi + 0x1c]
subss xmm1, dword [rsi + 0xdc]
addss xmm1, dword [rsi + 0x14]
movss xmm0, dword [rsi + 0x18]
subss xmm0, xmm10
movss dword [rbp - 0x49], xmm0
movss dword [rbp - 0x45], xmm1
mov r9d, 0x80
xor r8d, r8d
lea rdx, [rbp - 0x49]
lea rcx, str.main
call fcn.140007100
call fcn.140007570
call fcn.14000bcc0
movaps xmm6, xmm0
subss xmm6, dword [0x1400b2bc8]
call fcn.14000ba70
subss xmm6, dword [rax + 0x4c]
unpcklps xmm6, xmm9
movq rdx, xmm6
lea rcx, str.Configure
call fcn.140001d30
lea rcx, [rbp - 0x41]
call fcn.14000b1a0
movss xmm0, dword [rax]
mulss xmm0, xmm13
movss dword [rbp - 0x49], xmm0
mov dword [rbp - 0x45], 0x41a00000
lea rdx, [rbp - 0x49]
lea rcx, str.Save_Config
call fcn.1400352c0
test al, al
je 0x140050b72
xorps xmm0, xmm0
movups xmmword [rbp - 0x31], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x21], xmm1
mov r8d, reloc.WS2_32.dll_ntohs
lea rdx, str.mushroomcc.json
lea rcx, [rbp - 0x31]
call fcn.1400014e0
nop
lea rcx, [rbp - 0x31]
call fcn.140051280
nop
mov rdx, qword [rbp - 0x19]
cmp rdx, 0xf
jbe 0x140050b72
inc rdx
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050b6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140050b6d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400a3cc0
movss xmm1, dword [0x1400aad30]
xorps xmm0, xmm0
call fcn.140015aa0
lea rcx, [rbp - 0x41]
call fcn.14000b1a0
movss xmm0, dword [rax]
subss xmm0, dword [0x1400abf34]
movss dword [rbp - 0x49], xmm0
mov dword [rbp - 0x45], 0x41a00000
lea rdx, [rbp - 0x49]
lea rcx, str.Load_Config
call fcn.1400352c0
test al, al
je 0x140050c25
xorps xmm0, xmm0
movups xmmword [rbp - 0x31], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x21], xmm1
mov r8d, reloc.WS2_32.dll_ntohs
lea rdx, str.mushroomcc.json
lea rcx, [rbp - 0x31]
call fcn.1400014e0
nop
lea rcx, [rbp - 0x31]
call fcn.14004caf0
nop
mov rdx, qword [rbp - 0x19]
cmp rdx, 0xf
jbe 0x140050c25
inc rdx
mov rcx, qword [rbp - 0x31]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140050c20
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140050c20
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1400a3cc0
call fcn.140001fa0
call fcn.140009f30
call fcn.140009840
call fcn.140009f30
call fcn.140009560
mov rcx, qword [rbp - 0x11]
xor rcx, rsp
call fcn.1400a3de0
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm9, xmmword [r11 - 0x20]
movaps xmm10, xmmword [r11 - 0x30]
movaps xmm11, xmmword [r11 - 0x40]
movaps xmm13, xmmword [r11 - 0x50]
mov rsp, r11
pop r15
pop r14
pop rbp
ret