Function at 0x140048b90
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x220]
sub rsp, 0x320
mov rax, qword [0x1400d73c0]
xor rax, rsp
mov qword [rbp + 0x210], rax
mov r12, rcx
xor r15d, r15d
mov dword [rsp + 0x48], r15d
cmp byte [0x1400d83c8], r15b
jne 0x140048c08
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], r15
lea r8d, [r15 + 0x52]
lea rdx, str.You_need_to_run_the_KeyAuthApp.init____function_before_any_other_KeyAuth_functions
lea rcx, [rbp - 0x80]
call fcn.14002c864
lea rcx, [rbp - 0x80]
call fcn.14004af10
mov dword [rsp + 0x70], 0xf0eaf3bd
mov dword [rsp + 0x74], 0xc6c8d2fa
mov word [rsp + 0x78], 0x9e
mov byte [rsp + 0x7a], 1
mov dword [rsp + 0x48], 0xf3fcf2bd
mov dword [rsp + 0x4c], 0x1009dfa
mov dword [rsp + 0x60], 0xedf8efbd
mov dword [rsp + 0x64], 0xcccec9ec
mov dword [rsp + 0x68], 0x98c0ca
mov byte [rsp + 0x6c], 1
mov dword [rsp + 0x50], 0xfbede5ef
mov dword [rsp + 0x54], 0xc7c9c3a2
mov dword [rsp + 0x58], 0x100cfc0
mov rcx, r15
nop dword [rax]
lea eax, [rcx - 0x65]
xor byte [rsp + rcx + 0x60], al
inc rcx
cmp rcx, 0xb
jb 0x140048c70
mov byte [rsp + 0x6c], r15b
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x6b]
lea rdx, [rsp + 0x60]
lea rcx, [rbp - 0x40]
call fcn.140040ad0
nop
cmp byte [rsp + 0x5b], 0
je 0x140048cc5
mov rcx, r15
nop dword [rax + rax]
lea eax, [rcx - 0x65]
xor byte [rsp + rcx + 0x50], al
inc rcx
cmp rcx, 0xa
jb 0x140048cb0
mov byte [rsp + 0x5b], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x5a]
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x48]
call fcn.140040ad0
nop
lea r9, [rbp - 0x40]
lea r8, [rbp + 0x48]
movzx edx, byte [rsp + 0x30]
lea rcx, [rbp - 0x60]
call fcn.14002ea0c
nop
mov rdx, qword [rbp + 0x60]
cmp rdx, 0x10
jb 0x140048d34
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048d2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140048d2e
push rcx
call 0x14011f8bd
int3
call fcn.1400a2474
nop
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x140048d73
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048d6d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140048d6d
call 0x1401da4a8
int3
call fcn.1400a2474
nop
lea rdx, [r12 + 0x238]
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140048d89
mov rdx, qword [rdx]
lea rcx, [rbp - 0x60]
call fcn.140033454
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x30], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x20]
lea rcx, [rbp]
call fcn.140041000
nop
mov rdx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x140048dd2
mov rdx, qword [r12]
mov r8, qword [r12 + 0x10]
mov rcx, rax
call fcn.140033454
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x80], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x70], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x80]
lea rcx, [rbp - 0x20]
call fcn.1400411c0
nop
lea rdx, [r12 + 0x20]
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x140048e23
mov rdx, qword [rdx]
mov rcx, rax
call fcn.140033454
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0xd8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0xe8], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x140048e8d
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048e88
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140048e88
push rcx
call 0x1401af72a
int3
call fcn.1400a2474
movdqa xmm0, xmmword [0x1400ae9c0]
movdqu xmmword [rbp - 0x10], xmm0
mov byte [rbp - 0x20], 0
mov rdx, qword [rbp - 0x68]
cmp rdx, 0x10
jb 0x140048edd
inc rdx
mov rcx, qword [rbp - 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048ed7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140048ed7
push rcx
call 0x1401cee2a
int3
call fcn.1400a2474
nop
mov rdx, qword [rbp + 0x18]
cmp rdx, 0x10
jb 0x140048f1b
inc rdx
mov rcx, qword [rbp]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048f16
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140048f16
call 0x140186ec2
int3
call fcn.1400a2474
movdqa xmm0, xmmword [0x1400ae9c0]
movdqu xmmword [rbp + 0x10], xmm0
mov byte [rbp], 0
mov rdx, qword [rbp + 0x38]
cmp rdx, 0x10
jb 0x140048f6b
inc rdx
mov rcx, qword [rbp + 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048f65
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140048f65
call 0x1401f5c6f
int3
call fcn.1400a2474
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x140048fa9
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140048fa4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140048fa4
call 0x1400fb5a1
int3
call fcn.1400a2474
movdqa xmm0, xmmword [0x1400ae9c0]
movdqu xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x60], 0
lea rax, [rbp - 0x40]
mov qword [rbp + 0x40], rax
lea rdx, [r12 + 0x80]
lea rcx, [rbp - 0x40]
call fcn.140046920
mov r14, rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x70], r15
mov qword [rbp - 0x68], r15
lea rsi, [rbp + 0xd8]
mov r13, qword [rbp + 0xd8]
cmp qword [rbp + 0xf0], 0x10
cmovae rsi, r13
movabs rbx, 0x7fffffffffffffff
mov rdi, qword [rbp + 0xe8]
cmp rdi, rbx
ja 0x14004969b
mov qword [rbp - 0x68], 0xf
cmp rdi, 0x10
jae 0x140049034
mov qword [rbp - 0x70], rdi
movups xmm0, xmmword [rsi]
movups xmmword [rbp - 0x80], xmm0
jmp 0x140049086
mov rax, rdi
or rax, 0xf
cmp rax, rbx
ja 0x14004904f
mov rbx, rax
mov ecx, 0x16
cmp rax, rcx
cmovb rbx, rcx
mov rdx, rbx
add rdx, 1
mov rax, 0xffffffffffffffff
cmovb rdx, rax
lea rcx, [rbp - 0x80]
call fcn.140048780
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x68], rbx
lea r8, [rdi + 1]
mov rdx, rsi
mov rcx, rax
call fcn.1400a372e
nop
mov r8, r14
lea rdx, [rbp - 0x80]
lea rcx, [rbp + 0x98]
call fcn.1400503e0
nop
mov qword [rbp + 0x80], r15
mov byte [rsp + 0x20], 0
mov r9b, 1
lea r8, [rbp + 0x48]
lea rdx, [rbp + 0x98]
lea rcx, [rbp + 0x88]
call fcn.140043f30
nop
mov dword [rsp + 0x38], 0xedeef9f6
mov dword [rsp + 0x3c], 0xc4c7fe
mov byte [rsp + 0x40], 1
mov rcx, r15
nop dword [rax]
lea eax, [rcx - 0x65]
xor byte [rsp + rcx + 0x38], al
inc rcx
cmp rcx, 7
jb 0x1400490e0
mov byte [rsp + 0x40], 0
lea r9, [rsp + 0x30]
lea r8, [rsp + 0x3f]
lea rdx, [rsp + 0x38]
lea rcx, [rbp - 0x60]
call fcn.140040ad0
nop
mov rbx, qword [rsp + 0x38]
movzx ecx, byte [rbp + 0x88]
test cl, cl
jne 0x14004913a
mov byte [rbp + 0x88], 1
call fcn.140042970
mov qword [rbp + 0x90], rax
movzx ecx, byte [rbp + 0x88]
jmp 0x140049141
mov rax, qword [rbp + 0x90]
cmp cl, 1
jne 0x140049155
lea rdx, [rbp - 0x60]
mov rcx, rax
call fcn.140047970
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0xb8], xmm0
movdqa xmm1, xmmword [0x1400ae9c0]
movdqu xmmword [rbp + 0xc8], xmm1
mov byte [rbp + 0xb8], 0
mov dword [rsp + 0x48], 0x1fd6
cmp byte [rbx], 3
jne 0x140049195
mov rdx, qword [rbx + 8]
lea rax, [rbp + 0xb8]
cmp rax, rdx
je 0x1400491b3
jmp 0x140049198
mov rdx, r15
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1400491a6
mov rdx, qword [rdx]
lea rcx, [rbp + 0xb8]
call fcn.1400488c0
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x1400491f1
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400491ec
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400491ec
push rax
call 0x1400f469c
int3
call fcn.1400a2474
movdqa xmm0, xmmword [0x1400ae9c0]
movdqu xmmword [rbp - 0x50], xmm0
mov byte [rbp - 0x60], 0
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x110]
call fcn.1400a3752
lea rax, [0x1400b7b40]
mov qword [rbp + 0x110], rax
lea rax, [0x1400b7b48]
mov qword [rbp + 0x120], rax
lea rcx, [rbp + 0x1a8]
push rsi
call 0x14016aed0
nop
mov dword [rsp + 0x48], 0x1fee
xor r8d, r8d
lea rdx, [rbp + 0x128]
lea rcx, [rbp + 0x110]
push rbx
call 0x140181048
nop
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x110], rdi
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x10c], edx
lea rcx, [rbp + 0x128]
push rbx
call 0x14010a1b1
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x190], r15
mov dword [rbp + 0x198], r15d
xorps xmm0, xmm0
movups xmmword [rbp + 0xf8], xmm0
mov ecx, 0x20
call fcn.1400a2438
mov rsi, rax
mov qword [rbp + 0xf8], rax
lea r15, [rax + 0x20]
mov qword [rbp + 0x108], r15
xorps xmm0, xmm0
movups xmmword [rax], xmm0
movups xmmword [rax + 0x10], xmm0
mov qword [rbp + 0x100], r15
lea r8, [rbp + 0x98]
cmp qword [rbp + 0xb0], 0x10
cmovae r8, qword [rbp + 0x98]
lea rcx, [r12 + 0x258]
cmp qword [rcx + 0x18], 0x10
jb 0x14004931e
mov rcx, qword [rcx]
mov qword [rsp + 0x28], 0x20
mov qword [rsp + 0x20], rsi
mov r9, qword [rbp + 0xa8]
mov rdx, qword [r12 + 0x268]
call fcn.140057a10
mov r14, rsi
cmp rsi, r15
je 0x1400493ba
nop dword [rax + rax]
movzx edi, byte [r14]
lea rdx, [0x140035714]
lea rcx, [rbp + 0x120]
call 0x1401e4b1f
int3
lea rbx, [0x1400d7338]
cmp qword [0x1400d7350], 0x10
cmovae rbx, qword [0x1400d7338]
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x110]
call fcn.140052960
cmp qword [rax + 0x18], 0x10
jb 0x1400493f0
mov rax, qword [rax]
nop dword [rax + rax]
movd xmm2, dword [rax]
punpcklbw xmm2, xmm2
punpcklwd xmm2, xmm2
psrad xmm2, 0x18
movd xmm0, dword [rbx]
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
pxor xmm2, xmm0
movd xmm1, dword [rax + 4]
punpcklbw xmm1, xmm1
punpcklwd xmm1, xmm1
psrad xmm1, 0x18
movd xmm0, dword [rbx + 4]
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
psrad xmm0, 0x18
pxor xmm1, xmm0
por xmm2, xmm1
movdqa xmm0, xmm2
psrldq xmm0, 8
por xmm2, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 4
por xmm2, xmm0
movd ebx, xmm2
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x14004949e
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140049499
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140049499
push rcx
call 0x14010f213
int3
call fcn.1400a2474
test ebx, ebx
je 0x1400494c1
lea r8, [rbp + 0xb8]
lea rdx, str.Signature_checksum_failed._Request_was_tampered_with_or_session_ended_most_likely.__echo:__echo_Message:
lea rcx, [rbp - 0x40]
call fcn.14002c4b0
mov rcx, rax
call fcn.14004af10
lea rdx, [rbp + 0x88]
lea rcx, [rsp + 0x60]
call fcn.140046610
mov rdx, rax
mov rcx, r12
call fcn.14004e7b0
nop
test rsi, rsi
je 0x140049517
sub r15, rsi
cmp r15, 0x1000
jb 0x14004950b
add r15, 0x27
mov rcx, qword [rsi - 8]
sub rsi, rcx
lea rax, [rsi - 8]
cmp rax, 0x1f
ja 0x1400495a8
mov rsi, rcx
mov rdx, r15
mov rcx, rsi
call fcn.1400a2474
nop
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x110], rdi
mov rax, qword [rbp + 0x110]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x10c], edx
lea rcx, [rbp + 0x128]
call fcn.140047000
lea rcx, [rbp + 0x130]
push rcx
call 0x140101529
lea rcx, [rbp + 0x1a8]
call 0x140185be4
int3
call 0x1400f6731
int3
call fcn.14003337c
nop
int3