Function at 0x140079620
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x70
mov rsi, rcx
mov rax, qword [0x140183d00]
xor rax, rsp
mov qword [rsp + 0x68], rax
add rcx, 8
mov rdx, qword [rsi]
call fcn.140077980
test al, al
je 0x1400796e3
add rsi, 9
mov rcx, rsi
call fcn.140077e30
mov sil, 1
test al, al
jne 0x14007a040
cmp byte [0x140186a9b], 0
jne 0x140079c82
xor ecx, ecx
movabs r8, 0xaaaaaaaaaaaaaaab
lea r9, [0x140107da0]
lea r10, [0x140186a70]
nop dword [rax + rax]
mov rax, rcx
mul r8
shr rdx, 1
and rdx, 0xfffffffffffffff8
lea rdx, [rdx + rdx*2]
mov rax, r9
sub rax, rdx
movzx edx, byte [rax + rcx + 0x157]
xor dl, byte [rcx + r9 + 0x16f]
mov byte [rcx + r10], dl
cmp rcx, 0x2a
je 0x140079c7b
add rax, 0x157
movzx eax, byte [rax + rcx + 1]
xor al, byte [rcx + r9 + 0x170]
mov byte [rcx + r10 + 1], al
add rcx, 2
jmp 0x140079690
cmp byte [0x140186a60], 0
jne 0x140079786
mov ecx, 1
xor r8d, r8d
movabs r9, 0x8618618618618619
lea r10, [0x140107da0]
lea r11, [0x140186a38]
mov rax, rcx
mul r9
mov rsi, rcx
sub rsi, rdx
shr rsi, 1
add rsi, rdx
shr rsi, 4
mov rax, r8
mul r9
imul rax, rsi, 0xffffffffffffffeb
mov rsi, r8
sub rsi, rdx
shr rsi, 1
add rsi, rdx
shr rsi, 4
imul rdx, rsi, 0xffffffffffffffeb
lea rsi, [r10 + r8]
movzx edx, byte [rdx + rsi + 0x103]
xor dl, byte [r8 + r10 + 0x118]
mov byte [r8 + r11], dl
movzx eax, byte [rax + rsi + 0x104]
xor al, byte [r8 + r10 + 0x119]
mov byte [r8 + r11 + 1], al
add r8, 2
add rcx, 2
cmp r8, 0x28
jne 0x140079710
mov byte [0x140186a60], 1
movq xmm0, qword [0x140186a38]
movdqa xmm1, xmmword [str.HHHHHHHH]
paddb xmm0, xmm1
pxor xmm0, xmmword [str.xyz]
movq qword [rsp + 0x20], xmm0
movzx eax, byte [0x140186a40]
add al, 0xc8
movdqu xmm0, xmmword [0x140186a41]
paddb xmm0, xmmword [str.HHHHHHHHHHHHHHHH]
pxor xmm0, xmmword [0x140108030]
mov byte [rsp + 0x28], al
movdqu xmmword [rsp + 0x29], xmm0
movq xmm0, qword [0x140186a51]
paddb xmm0, xmm1
pxor xmm0, xmmword [0x140108040]
movq qword [rsp + 0x39], xmm0
movd xmm0, dword [0x140186a59]
paddb xmm0, xmmword [str.HHHH]
pxor xmm0, xmmword [0x140101260]
movd dword [rsp + 0x41], xmm0
movzx eax, byte [0x140186a5d]
add al, 0x48
xor al, 0x9d
mov byte [rsp + 0x45], al
movzx eax, byte [0x140186a5e]
add al, 0x48
xor al, 0x9e
mov byte [rsp + 0x46], al
movzx eax, byte [0x140186a5f]
add al, 0x48
xor al, 0x9f
mov byte [rsp + 0x47], al
mov qword [rsp + 0x48], 0
mov dword [rsp + 0x4f], 0
lea rsi, [rsp + 0x20]
call fcn.140085530
mov rdi, qword [rax]
call fcn.140085540
mov rcx, qword [rax]
xor eax, eax
jmp 0x14007988d
mov r9, rcx
movzx ecx, r8b
add rax, r9
add rax, rcx
mov rcx, r9
inc rax
cmp rax, 0x33
jae 0x14007a006
cmp rdi, rax
ja 0x140079c6e
movzx r8d, byte [rsp + rax + 0x20]
movzx edx, r8b
lea r9, [rcx + 1]
cmp rdi, r9
jae 0x140079900
cmp rcx, rax
ja 0x140079fea
lea r11, [rdi + rcx]
cmp r11, rax
jbe 0x140079950
lea r10, [rcx + 2]
cmp rdi, r10
je 0x140079ad0
lea r10, [rcx + 0x28]
cmp rdi, r10
jne 0x140079a5c
lea r9d, [rax - 0x1eaf5da0]
lea r8d, [rax + rdx]
add r8d, 0xe150a260
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x60
jmp 0x140079b78
je 0x140079870
lea r10, [rcx + 2]
cmp rdi, r10
je 0x140079af0
lea r10, [rcx + 3]
cmp rdi, r10
jne 0x140079a2f
lea r9d, [rax + 0x229b8228]
lea r8d, [rax + rdx]
add r8d, 0x229b8228
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xe8
jmp 0x140079b9f
lea r10, [rcx + 6]
cmp rdi, r10
jae 0x140079981
lea ebx, [rax - 0x14206888]
lea r10d, [rax + rdx]
add r10d, 0xebdf9778
and ebx, edx
add ebx, ebx
sub r10d, ebx
add r10b, 0xb8
cmp r11, 0x10
je 0x140079af0
jmp 0x1400799b9
cmp rdi, r9
je 0x140079870
cmp rdi, r10
je 0x140079a9b
lea ebx, [rax + 0x59576cd8]
lea r10d, [rax + rdx]
add r10d, 0x59576cd8
and ebx, edx
add ebx, ebx
sub r10d, ebx
add r10b, 0x18
cmp r11, 0x10
je 0x140079af0
lea r11, [rcx + 4]
cmp rdi, r11
jbe 0x140079a89
lea r11d, [rax + 0x34471798]
lea r10d, [rax + rdx]
add r10d, 0x34471798
and r11d, edx
add r11d, r11d
sub r10d, r11d
add r10b, 0xd8
cmp rdi, 0x1f
ja 0x140079b5a
lea r11, [rcx + 5]
cmp rdi, r11
jbe 0x140079bc6
lea r8d, [rax - 0x72617b90]
lea r10d, [rax + rdx]
add r10d, 0x8d9e8470
and r8d, edx
add r8d, r8d
sub r10d, r8d
add r10b, 0xf0
cmp rcx, 2
ja 0x140079aad
mov byte [rsp + rax + 0x20], r10b
jmp 0x140079880
lea r10, [rcx + 5]
cmp rdi, r10
jne 0x140079aa0
lea r9d, [rax - 0x5a54ee8]
lea r8d, [rax + rdx]
add r8d, 0xfa5ab118
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x58
jmp 0x140079b78
lea r10, [rcx + 0x2a]
cmp rdi, r10
jne 0x140079ad8
lea r9d, [rax - 0x46f02eb0]
lea r8d, [rax + rdx]
add r8d, 0xb90fd150
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xd0
jmp 0x140079b9f
cmp rdi, r9
je 0x140079aad
lea rbx, [rcx + 3]
cmp rdi, rbx
jne 0x140079c02
mov r9, rcx
jmp 0x140079ad0
lea r10, [rcx + 6]
cmp rdi, r10
jne 0x1400798a9
lea ecx, [rax - 0x190a0eb8]
lea r8d, [rdx + rax]
add r8d, 0xe6f5f148
and ecx, edx
add ecx, ecx
sub r8d, ecx
add r8b, 8
mov byte [rsp + rax + 0x20], r8b
nop
dec rax
jmp 0x14007987d
lea r10, [rcx + 0x10]
cmp rdi, r10
jne 0x140079bb1
nop word cs:[rax + rax]
lea r8d, [rax - 0x698bb0d8]
lea r10d, [rdx + rax]
add r10d, 0x96744f28
and r8d, edx
add r8d, r8d
sub r10d, r8d
add r10b, 0xe8
mov byte [rsp + rax + 0x20], r10b
movzx r8d, r10b
not rcx
add rcx, rax
sub rcx, r8
lea eax, [rcx - 0x7dac1960]
lea r8d, [rcx + rdx]
add r8d, 0x8253e6a0
and eax, edx
add eax, eax
sub r8d, eax
add r8b, 0xa0
mov byte [rsp + rcx + 0x20], r8b
sub rcx, rdi
inc rdi
movzx r8d, byte [rsp + rcx + 0x1e]
add rcx, 0xfffffffffffffffe
mov rax, rcx
jmp 0x140079873
mov r9d, eax
or r9d, 0xd2d588c0
lea r10d, [r9 + rdx]
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r8b, r10b
add r8b, 0xc0
lea r9d, [rax - 0x414adfc8]
lea r10d, [rdx + rax]
add r10d, 0xbeb52038
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, r8b
add r10b, 0x78
mov byte [rsp + rax + 0x20], r10b
add rdi, rcx
movzx edx, r8b
not rdx
add rax, rdx
jmp 0x140079880
lea rdx, [rcx + 0x20]
mov r9, rcx
cmp rdi, rdx
je 0x140079873
jmp 0x14007984e
cmp rdi, r9
je 0x140079870
lea r8, [rcx + 2]
cmp rdi, r8
je 0x140079af0
cmp rdi, r11
jne 0x140079c3d
lea r9d, [rax - 0x3ba590e0]
lea r8d, [rax + rdx]
add r8d, 0xc45a6f20
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x20
jmp 0x140079b9f
cmp rdi, r11
jne 0x140079c2b
lea r9d, [rax + 0x6b030248]
lea r8d, [rax + rdx]
add r8d, 0x6b030248
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 8
jmp 0x140079b9f
lea r11, [rcx + 2]
cmp rdi, r11
jne 0x1400799e5
jmp 0x140079af0
lea r8, [rcx + 3]
cmp rdi, r8
jne 0x140079a1b
lea r9d, [rax - 0x63e661f0]
lea r8d, [rax + rdx]
add r8d, 0x9c199e10
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x90
jmp 0x140079b78
lea rsi, [rsp + 0x595c38]
jmp 0x14007a006
mov byte [0x140186a9b], 1
movdqa xmm0, xmmword [0x140108380]
movdqa xmm1, xmmword [0x140186a70]
paddb xmm1, xmm0
pxor xmm1, xmmword [0x140108390]
movdqa xmmword [rsp + 0x20], xmm1
paddb xmm0, xmmword [0x140186a80]
pxor xmm0, xmmword [0x140101070]
movdqa xmmword [rsp + 0x30], xmm0
movq xmm0, qword [0x140186a90]
paddb xmm0, xmmword [str.99999999]
pxor xmm0, xmmword [0x1401083b0]
movq qword [rsp + 0x40], xmm0
movzx eax, byte [0x140186a98]
add al, 0x39
xor al, 0xe7
mov byte [rsp + 0x48], al
movzx eax, byte [0x140186a99]
add al, 0x39
xor al, 0xe8
mov byte [rsp + 0x49], al
movzx eax, byte [0x140186a9a]
add al, 0x39
xor al, 0xe9
mov byte [rsp + 0x4a], al
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x4b], xmm0
lea rsi, [rsp + 0x20]
call fcn.140085530
mov rdi, qword [rax]
call fcn.140085540
mov rcx, qword [rax]
xor eax, eax
jmp 0x140079dad
lea r8d, [rax + 0xce79ed5]
lea r10d, [rdx + rax]
add r10d, 0xce79ed5
and r8d, edx
add r8d, r8d
sub r10d, r8d
add r10b, 0x2d
mov byte [rsp + rax + 0x20], r10b
movzx r8d, r10b
not rcx
add rcx, rax
sub rcx, r8
mov rax, rcx
mov rcx, r9
lea r8d, [rax + 0x2e854c94]
lea r9d, [rax + rdx]
add r9d, 0x2e854c94
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0xf4
mov byte [rsp + rax + 0x20], r9b
sub rax, rdi
inc rdi
movzx r8d, byte [rsp + rax + 0x1e]
add rax, 0xfffffffffffffffe
movzx edx, r8b
add rax, rcx
add rax, rdx
inc rax
cmp rax, 0x3b
jae 0x14007a006
cmp rdi, rax
ja 0x140079ff4
movzx r8d, byte [rsp + rax + 0x20]
movzx edx, r8b
lea r9, [rcx + 1]
cmp rdi, r9
jae 0x140079e10
cmp rcx, rax
ja 0x140079ffe
lea r8, [rcx + 9]
cmp rdi, r8
jb 0x140079e60
cmp rdi, r9
jne 0x140079e60
lea ecx, [rax - 0x798f1827]
lea r8d, [rdx + rax]
add r8d, 0x8670e7d9
and ecx, edx
add ecx, ecx
sub r8d, ecx
add r8b, 0x11
mov byte [rsp + rax + 0x20], r8b
jmp 0x140079f4a
je 0x140079d96
lea r8, [rcx + 3]
cmp rdi, r8
je 0x140079d2b
lea r8, [rcx + 5]
cmp rdi, r8
jne 0x140079f3a
lea r8d, [rax - 0x4afe2d4d]
lea r9d, [rax + rdx]
add r9d, 0xb501d2b3
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0x1b
add rdi, rcx
mov r8, rdi
jmp 0x140079ea2
lea r8, [rdi + rcx]
cmp r8, rax
jbe 0x140079edb
lea r9, [rcx + 0xa]
cmp rdi, r9
je 0x140079f47
lea r9, [rcx + 4]
cmp rdi, r9
jne 0x140079f55
lea r10d, [rax + 0x3b72ba8c]
lea r9d, [rax + rdx]
add r9d, 0x3b72ba8c
and r10d, edx
add r10d, r10d
sub r9d, r10d
add r9b, 0x2c
lea r10d, [rax - 0x3653bca9]
lea r11d, [rdx + rax]
add r11d, 0xc9ac4357
and r10d, edx
add r10d, r10d
sub r11d, r10d
add r11b, r9b
add r11b, 0x9f
mov byte [rsp + rax + 0x20], r11b
movzx edx, r9b
not rdx
add rax, rdx
mov rdi, r8
jmp 0x140079da0
cmp r8, 5
je 0x140079d2b
cmp rdi, r9
je 0x140079de8
lea r10, [rcx + 2]
cmp rdi, r10
je 0x140079f4a
lea r10, [rcx + 3]
cmp rdi, r10
je 0x140079f47
lea r10, [rcx + 7]
cmp rdi, r10
je 0x140079d2b
lea r9, [rcx + 8]
cmp rdi, r9
jbe 0x140079f67
lea r9d, [rax - 0x3b7e58d2]
lea r8d, [rax + rdx]
add r8d, 0xc481a72e
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xbe
jmp 0x140079fe0
lea r8, [rcx + 2]
cmp rdi, r8
jne 0x140079dc9
mov r9, rcx
dec rax
mov rcx, r9
jmp 0x140079da0
lea r8, [rcx + 0x2a]
cmp rdi, r8
je 0x140079d62
jmp 0x140079d14
lea r9, [rcx + 4]
cmp rdi, r9
jne 0x140079f94
lea r10d, [rax + 0x14aa70a4]
lea r9d, [rax + rdx]
add r9d, 0x14aa70a4
and r10d, edx
add r10d, r10d
sub r9d, r10d
add r9b, 0x84
jmp 0x140079ec9
lea r9, [rcx + 5]
cmp rdi, r9
jne 0x140079fc1
lea r10d, [rax + 0x57e5cc22]
lea r9d, [rax + rdx]
add r9d, 0x57e5cc22
and r10d, edx
add r10d, r10d
sub r9d, r10d
add r9b, 0x12
jmp 0x140079ea2
lea r9d, [rax + 0x219dadbf]
lea r8d, [rax + rdx]
add r8d, 0x219dadbf
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xc7
mov byte [rsp + rax + 0x20], r8b
jmp 0x140079da0
lea rsi, [rsp + 0x179c4c0]
jmp 0x14007a006
lea rsi, [rsp + 0xce6a33]
jmp 0x14007a006
lea rsi, [rsp + 0x170bc74]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cerr]
mov rdx, rsi
call fcn.14005c480
mov rsi, rax
mov rax, qword [rax]
movsxd rcx, dword [rax + 4]
add rcx, rsi
mov dl, 0xa
call qword [sym.imp.MSVCP140.dll_public:_char___cdecl_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const___ptr64]
mov rcx, rsi
mov edx, eax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::put_char____ptr64]
mov rcx, rsi
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::flush_void____ptr64]
xor esi, esi
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1400f0d70
mov eax, esi
add rsp, 0x70
pop rbx
pop rdi
pop rsi
ret