Function at 0x140002980
Capabilities:
Encode data using base64
Generate random numbers using a mersenne twister
Hide graphical window
Log keystrokes via polling

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xc0
lea rax, [0x140001450]
mov edx, 0x65
mov dword [0x1400300a0], 3
mov qword [0x1400300a8], rax
lea rbp, [0x14002502c]
mov qword [0x1400300b0], 0
mov edi, r9d
mov rbx, rcx
mov qword [0x140030090], rcx
mov qword [0x1400300b8], rcx
call qword [sym.imp.USER32.dll_LoadIconA]
mov edx, 0x7f00
xor ecx, ecx
mov qword [0x1400300c0], rax
call qword [sym.imp.USER32.dll_LoadCursorA]
mov ecx, 0xe1e1e1
mov qword [0x1400300c8], rax
call qword [sym.imp.GDI32.dll_CreateSolidBrush]
pxor xmm0, xmm0
mov qword [0x1400300e0], rbp
lea rcx, [0x1400300a0]
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rsp + 0x94], xmm0
movups xmmword [rsp + 0xa4], xmm0
mov qword [0x1400300d0], rax
mov qword [rsp + 0x80], 0
mov dword [rsp + 0xb4], 0
mov dword [rsp + 0x90], 1
mov qword [0x140030150], 0xffffffffffffd8f0
call qword [sym.imp.USER32.dll_RegisterClassA]
mov r12, qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 1
call r12
xor ecx, ecx
mov esi, eax
call r12
pxor xmm0, xmm0
xor ecx, ecx
mov qword [rsp + 0x50], rbx
cvtsi2ss xmm0, esi
mov rbx, qword [sym.imp.USER32.dll_CreateWindowExA]
divss xmm0, dword [str.ff_H]
lea rsi, str.Static
cvttss2si edx, xmm0
pxor xmm0, xmm0
mov r9d, 0xc80000
mov qword [rsp + 0x58], 0
cvtsi2ss xmm0, eax
lea r8, str.epic1994clicker
divss xmm0, dword [0x1400250f4]
mov qword [rsp + 0x48], 0
cvttss2si eax, xmm0
mov dword [rsp + 0x38], 0xb4
mov qword [rsp + 0x40], 0
mov dword [rsp + 0x28], edx
mov rdx, rbp
mov dword [rsp + 0x30], 0x96
mov dword [rsp + 0x20], eax
call rbx
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50000000
lea r8, str._rate__ms__n_trigger_n_output
mov qword [0x140030128], rax
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x32
mov dword [rsp + 0x30], 0x64
mov dword [rsp + 0x28], 0xa
mov dword [rsp + 0x20], 6
call rbx
mov rax, qword [0x140030128]
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50000000
lea r8, str._variation_n_stop_at
mov qword [rsp + 0x58], 0
lea rsi, str.Edit
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x21
mov dword [rsp + 0x30], 0x64
mov dword [rsp + 0x28], 0x70
mov dword [rsp + 0x20], 6
call rbx
mov rax, qword [0x140030128]
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50802000
lea r8, [0x140025065]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0xfa0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x14
mov dword [rsp + 0x30], 0x3d
mov dword [rsp + 0x28], 5
mov dword [rsp + 0x20], 0x4f
call rbx
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50802000
mov qword [0x140030120], rax
mov rax, qword [0x140030128]
lea r8, [0x14002506e]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0xfa0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x14
mov dword [rsp + 0x30], 0x3d
mov dword [rsp + 0x28], pe_nt_image_headers64
mov dword [rsp + 0x20], 0x4f
call rbx
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50802000
mov qword [0x140030118], rax
mov rax, qword [0x140030128]
lea r8, [0x14002506e]
lea rsi, str.Button
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0xfa0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x14
mov dword [rsp + 0x30], 0x3d
mov dword [rsp + 0x28], 0x6d
mov dword [rsp + 0x20], 0x4f
call rbx
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50000000
mov qword [0x140030110], rax
mov rax, qword [0x140030128]
lea r8, [0x140025070]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0x7d0
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x14
mov dword [rsp + 0x30], 0x3d
mov dword [rsp + 0x28], 0x19
mov dword [rsp + 0x20], 0x4f
call rbx
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50000000
mov qword [0x1400300f8], rax
mov rax, qword [0x140030128]
lea r8, [0x14002507a]
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0xbb8
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x14
mov dword [rsp + 0x30], 0x3d
mov dword [rsp + 0x28], 0x2d
mov dword [rsp + 0x20], 0x4f
call rbx
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50000003
mov qword [0x1400300f0], rax
mov rax, qword [0x140030128]
lea r8, str.toggle
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0x1388
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x14
mov dword [rsp + 0x30], 0x86
mov dword [rsp + 0x28], 0x44
mov dword [rsp + 0x20], 6
call rbx
mov rdx, rsi
xor ecx, ecx
mov r9d, 0x50000003
mov qword [0x140030108], rax
mov rax, qword [0x140030128]
lea r8, str.always_on_top
mov qword [rsp + 0x58], 0
mov qword [rsp + 0x50], 0
mov qword [rsp + 0x48], 0x3e8
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x38], 0x12
mov dword [rsp + 0x30], 0x86
mov dword [rsp + 0x28], 0x58
mov dword [rsp + 0x20], 6
call rbx
xor r9d, r9d
mov r8d, 6
mov edx, 0xc5
mov rbx, qword [sym.imp.USER32.dll_SendMessageA]
mov rcx, qword [0x140030120]
mov qword [0x140030100], rax
call rbx
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [0x140030108]
mov edx, 0xf5
call rbx
mov edx, edi
mov rcx, qword [0x140030128]
lea rbx, [0x140030060]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [0x140030128]
call qword [sym.imp.USER32.dll_UpdateWindow]
call fcn.14001e1c0
mov rsi, qword [sym.imp.USER32.dll_PeekMessageA]
mov r12, qword [sym.imp.KERNEL32.DLL_Sleep]
mov rbp, qword [sym.imp.USER32.dll_TranslateMessage]
mov r13, rax
nop word [rax + rax]
cmp byte [0x140024081], 0
je 0x140003030
mov edx, dword [0x140030058]
test edx, edx
jne 0x140002ff0
cmp byte [0x14003005c], 0
je 0x140002fa0
pxor xmm0, xmm0
xor ecx, ecx
lea rdx, [0x140030140]
movups xmmword [0x140030140], xmm0
call sub.XINPUT1_3.dll_XInputGetState
test eax, eax
je 0x140003048
cmp dword [0x140030058], 1
jne 0x140002f91
mov rdi, qword [sym.imp.USER32.dll_DispatchMessageA]
nop dword [rax]
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov dword [rsp + 0x20], 1
mov rcx, rbx
call rsi
test eax, eax
je 0x140002ee8
mov rcx, rbx
call rbp
mov rcx, rbx
call rdi
jmp 0x140002f48
mov eax, dword [0x140030058]
cmp eax, 1
je 0x140003097
cmp eax, 3
je 0x140003117
cmp eax, 4
je 0x140003010
mov ecx, 1
call r12
jmp 0x140002f3a
mov ecx, dword [0x140024074]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140002f31
mov eax, dword [0x14002407c]
mov rcx, qword [0x140030128]
lea rdx, str.clicking...
mov dword [0x140030058], 1
mov dword [0x140030048], eax
mov eax, dword [0x140030054]
mov dword [0x140030050], eax
call qword [sym.imp.USER32.dll_SetWindowTextA]
jmp 0x140002f31
mov rdi, qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov ecx, 0x1b
call rdi
test ax, ax
je 0x140002f70
cmp dword [0x140030058], 4
jne 0x140003060
mov edx, 0xbb8
lea rcx, [0x140024078]
call fcn.140001930
jmp 0x140002f31
xor eax, eax
add rsp, 0xc0
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
movzx eax, word [0x140030144]
and eax, dword [0x140024074]
jne 0x140002fb1
jmp 0x140002f31
mov rcx, qword [0x140030128]
call qword [sym.imp.USER32.dll_SetFocus]
mov rcx, qword [0x140030128]
mov dword [0x140030058], 0
lea rdx, str.epic1994clicker
call qword [sym.imp.USER32.dll_SetWindowTextA]
mov byte [0x14003005e], 0
jmp 0x140002f31
call fcn.14001e1c0
mov ecx, 1
mov r14, rax
call qword [sym.imp.WINMM.dll_timeBeginPeriod]
xor ecx, ecx
lea rdx, [0x140030150]
call qword [0x140030158]
mov ecx, 1
call qword [sym.imp.WINMM.dll_timeEndPeriod]
cmp byte [0x14003005c], 0
je 0x14000312d
pxor xmm0, xmm0
xor ecx, ecx
lea rdx, [0x140030140]
movups xmmword [0x140030140], xmm0
call sub.XINPUT1_3.dll_XInputGetState
test eax, eax
je 0x14000324b
cmp byte [0x14003005e], 0
mov byte [0x14003005d], 0
jne 0x140003163
cmp byte [0x140024080], 0
je 0x140003241
mov byte [0x14003005e], 1
jmp 0x140002f31
mov edx, 0x7d0
lea rcx, [0x140024074]
call fcn.140001930
jmp 0x140002f31
mov ecx, dword [0x140024074]
call rdi
test ax, ax
setne al
movzx edx, byte [0x14003005e]
mov byte [0x14003005d], al
test dl, dl
jne 0x140003233
movzx edx, byte [0x140024080]
test dl, dl
je 0x140003233
test al, al
je 0x14000310b
call fcn.14001e1c0
movabs rcx, 0x431bde82d7b634db
mov r10, rax
mov r8, rax
sub r10, r14
sub r8, r13
mov rax, r10
sar r10, 0x3f
imul rcx
mov rax, r8
sar r8, 0x3f
sar rdx, 0x12
sub rdx, r10
mov r9, rdx
imul rcx
mov rax, rdx
sar rax, 0x12
sub rax, r8
add r9, rax
movsxd rax, dword [0x140030048]
cmp r9, rax
jl 0x140002f31
mov eax, dword [0x140030054]
test eax, eax
jle 0x1400031db
mov eax, dword [0x140030050]
sub eax, 1
mov dword [0x140030050], eax
test eax, eax
jg 0x1400031db
call fcn.140001870
mov r8d, dword [0x14003004c]
test r8d, r8d
jg 0x140003260
mov eax, dword [0x140024078]
cmp eax, 2
je 0x140003350
cmp eax, 4
je 0x1400033dd
cmp eax, 1
jne 0x14000338b
lea rdx, [rsp + 0x60]
mov r8d, 0x28
mov ecx, 1
mov dword [rsp + 0x74], 6
call qword [sym.imp.USER32.dll_SendInput]
call fcn.14001e1c0
mov r13, rax
jmp 0x140002f31
movzx eax, al
add eax, edx
cmp eax, 1
je 0x140003163
call fcn.140001870
jmp 0x140002f31
movzx eax, word [0x140030144]
and eax, dword [0x140024074]
setne al
jmp 0x14000313b
mov rax, qword [0x140030b20]
mov r10d, dword [0x14002407c]
lea r11, [0x140030160]
cmp rax, 0x26f
ja 0x140003400
lea r9, [rax + 1]
mov eax, dword [r11 + rax*4]
lea r13d, [r8 + r8 + 1]
mov qword [0x140030b20], r9
mov edx, eax
shr edx, 0xb
xor eax, edx
mov edx, eax
shl edx, 7
and edx, 0x9d2c5680
xor eax, edx
mov edx, eax
shl edx, 0xf
and edx, 0xefc60000
xor eax, edx
mov edx, eax
shr edx, 0x12
xor eax, edx
imul rax, r13
mov rcx, rax
cmp eax, r13d
jae 0x140003373
mov eax, r8d
xor edx, edx
not eax
sub eax, r8d
div r13d
mov r14d, edx
cmp ecx, edx
jb 0x140003333
jmp 0x140003373
lea r9, [rax + 1]
mov eax, dword [r11 + rax*4]
mov qword [0x140030b20], r9
mov edx, eax
shr edx, 0xb
xor eax, edx
mov edx, eax
shl edx, 7
and edx, 0x9d2c5680
xor eax, edx
mov edx, eax
shl edx, 0xf
and edx, 0xefc60000
xor eax, edx
mov edx, eax
shr edx, 0x12
xor eax, edx
imul rax, r13
mov rcx, rax
cmp eax, r14d
jae 0x140003373
mov rax, r9
cmp r9, 0x26f
jbe 0x1400032f0
mov rcx, r11
call fcn.14001dfe0
mov rax, qword [0x140030b20]
jmp 0x1400032f0
lea rdx, [rsp + 0x60]
mov r8d, 0x28
mov ecx, 1
mov dword [rsp + 0x74], 0x18
call qword [sym.imp.USER32.dll_SendInput]
jmp 0x140003226
mov rax, rcx
shr rax, 0x20
sub eax, r8d
add eax, r10d
mov dword [0x140030048], eax
jmp 0x1400031e7
lea r13, [rsp + 0x90]
mov word [rsp + 0x98], ax
mov rdi, qword [sym.imp.USER32.dll_SendInput]
mov r8d, 0x28
mov rdx, r13
mov ecx, 1
mov dword [rsp + 0x9c], 0
call rdi
mov r8d, 0x28
mov rdx, r13
mov ecx, 1
mov dword [rsp + 0x9c], 2
call rdi
jmp 0x140003226
lea rdx, [rsp + 0x60]
mov r8d, 0x28
mov ecx, 1
mov dword [rsp + 0x74], 0x60
call qword [sym.imp.USER32.dll_SendInput]
jmp 0x140003226
mov rcx, r11
call fcn.14001dfe0
mov rax, qword [0x140030b20]
jmp 0x140003281
push rdi
push rsi
push rbx
sub rsp, 0x90
xor esi, esi
call fcn.14000df50
call sub.api_ms_win_crt_runtime_l1_1_0.dll___p__acmdln
mov rbx, qword [rax]
test rbx, rbx
jne 0x140022f0b
jmp 0x140022f81
test cl, cl
je 0x140022f38
and esi, 1
je 0x140022f20
mov esi, 1
call sub.api_ms_win_crt_multibyte_l1_1_0.dll__ismbblead
test eax, eax
je 0x140022f07
cmp byte [rbx + 1], 1
sbb rbx, 0xffffffffffffffff
add rbx, 1
movsx ecx, byte [rbx]
cmp cl, 0x20
jle 0x140022ee8
mov eax, esi
xor eax, 1
cmp cl, 0x22
cmove esi, eax
jmp 0x140022ef6
test cl, cl
je 0x140022f38
nop dword [rax]
movzx eax, byte [rbx + 1]
add rbx, 1
test al, al
je 0x140022f38
cmp al, 0x20
jle 0x140022f28
lea rdx, [rsp + 0x20]
xor eax, eax
mov ecx, 0xd
mov rdi, rdx
rep stosq qword [rdi], rax
mov rcx, rdx
call qword [sym.imp.KERNEL32.DLL_GetStartupInfoA]
mov r9d, 0xa
test byte [rsp + 0x5c], 1
je 0x140022f66
movzx r9d, word [rsp + 0x60]
mov rcx, qword [0x140027c10]
mov r8, rbx
xor edx, edx
add rsp, 0x90
pop rbx
pop rsi
pop rdi
jmp 0x140002980
lea rbx, [0x140027370]
jmp 0x140022f38