Function at 0x140062680
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x108
mov rsi, rcx
mov eax, dword [0x141dc9ec0]
sub eax, dword [0x141dc9ec4]
add eax, 0x418906bc
cmp eax, 0x1038024b
nop dword [rax]
mov eax, dword [0x141dc9ec8]
or eax, dword [0x141dc9ecc]
imul eax, eax, 0x24d0345e
cmp eax, 0x65e4cd0c
je 0x1400626b0
movabs rdi, 0x10000000000000
movq rcx, xmm1
mov r11, rcx
shr r11, 0x34
and r11d, 0x7ff
and ebx, 0x7ff
lea rax, [rcx + rcx]
movabs rdx, 0x1ffffffffffffe
and rdx, rax
lea rax, [rdi - 1]
and rax, rcx
lea r9, [rax + rdi]
test r11d, r11d
cmove r9, rdx
ucomisd xmm1, xmm1
jp 0x140063006
mov r10d, r11d
add r10d, 0xfffffbcd
movabs rdx, 0x7ff0000000000000
mov rbx, rcx
and rbx, rdx
nop dword [rax]
mov ebp, dword [0x141dc9ed0]
add ebp, dword [0x141dc9ed4]
xor ebp, 0x16458000
or ebp, 0x681238ac
xor ebp, 0xb071ac3
cmp ebp, 0xdbba15ea
jb 0x140062730
mov r15d, 1
nop dword [rax]
mov ebp, dword [0x141dc9ed8]
or ebp, dword [str._vR_r3b]
and ebp, 0x771fa2b0
mov al, 0xa2
invalid
ja 0x1400627dc
in eax, dx
push rbp
invalid
push rdi
invalid
and ebp, 0xe4dc6790
xor r14d, r14d
test rbx, rbx
setne r14b
lea r12, [r14*2 + 2]
cmp rbx, rdx
cmove r12, r15
cmp ebp, 0xc4b695c8
ja 0x140062760
add r14, 3
test rax, rax
cmove r14, r12
dec r14
cmp r14, 3
ja case.default.0x1400627c1
lea rax, [0x141dba1dc]
movsxd rdx, dword [rax + r14*4]
add rdx, rax
ret 0xe2ff
mov r11b, 3
jmp 0x140062938
test r9b, 1
sete r11b
mov eax, dword [0x141dc9ee8]
add eax, dword [0x141dc9eec]
and eax, 0x2610d99
imul eax, eax, 0xa2d08418
and eax, 0x1839ee48
cmp eax, 0xee9c6d06
je case.0x1400627c1.3
nop dword [rax + rax]
mov eax, dword [0x141dc9ef0]
xor edx, edx
div dword [0x141dc9ef4]
and eax, 0xde0887bf
add eax, 0xb892a682
cmp eax, 0xc0a429d1
jae 0x140062800
mov ebx, 1
jmp 0x140062938
mov eax, dword [0x141dc9ee0]
add eax, dword [0x141dc9ee4]
imul eax, eax, 0xab9d004
add eax, 0xfd08a1c
ror byte [rdi], 1
imul rax, rax, 0x4d515541
shr rax, 0x3e
cmp eax, 0x43cfff70
je case.default.0x1400627c1
jmp 0x140063061
movabs rax, 0x40000000000000
lea rdx, [r9 + r9]
nop dword [rax]
mov r10d, dword [0x141dc9ef8]
or r10d, dword [0x141dc9efc]
and r10d, 0xc12c38c5
imul ebp, r10d, 0x14bcdf6a
add ebp, 0x2a60348e
xor ebx, ebx
cmp r9, rdi
sete r10b
mov r14, rdx
cmove r14, rax
cmp ebp, 0x9e021007
ja 0x140062870
mov bl, r10b
inc rbx
mov eax, dword [0x141dc9f00]
xor r10d, r10d
xor edx, edx
div dword [0x141dc9f04]
xor edx, edx
nop word cs:[rax + rax]
cmp r9, rdi
setne al
test r10b, r10b
jne 0x1400628d0
mov dl, al
add edx, 0xfffffbcb
mov eax, 0x92c60b0b
movzx r11d, r11w
movsx r10d, dx
add r10d, r11d
nop word cs:[rax + rax]
test r9b, 1
sete r11b
mov edx, dword [0x141dc9f08]
and edx, dword [0x141dc9f0c]
add edx, 0x9f8b35dd
imul rdx, rax
shr rdx, 0x3f
or edx, 0x6432f448
hlt
xor ah, byte [rcx + rax*4 - 6]
invalid
mov ebp, 0xd07233e2
mov r9, r14
jmp 0x140062938
mov r11b, 4
mov qword [rsp + 0xd0], r9
mov qword [rsp + 0xd8], 1
mov qword [rsp + 0xe0], rbx
mov word [rsp + 0xe8], r10w
mov byte [rsp + 0xea], r11b
add r11b, 0xfe
movzx edx, r11b
cmp dl, 3
mov eax, 3
cmovb eax, edx
test al, al
je 0x140062b09
movzx r9d, al
test rcx, rcx
lea r10, [0x141db5d1d]
mov r11d, 1
cmovs r11, r10
mov edi, 0x94ea715b
mov r15, rcx
shr r15, 0x3f
lea rbx, [0x141db5d1e]
nop dword [rax + rax]
mov eax, dword [0x141dc9f10]
xor edx, edx
div dword [0x141dc9f14]
imul rax, rdi
shr rax, 0x3e
or eax, 0x1765485
imul eax, eax, 0x73e0fa6
test rcx, rcx
mov r12, rbx
cmovs r12, r10
test r8b, r8b
cmove r12, r11
cmp eax, 0x37888894
je 0x1400629b0
test r8b, r8b
mov r14d, 1
cmovne r15, r14
cmp r9d, 1
je 0x140062b48
cmp r9d, 2
jne 0x140062b69
xor eax, eax
test al, al
je 0x140062a33
mov word [rsp + 0x20], 2
lea rax, [0x141db5d18]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 2
mov word [rsp + 0x38], 0
mov eax, 0xa63c101f
lea rcx, [0x141db5d18]
nop
mov edx, dword [0x141dc9ff8]
or edx, dword [0x141dc9ffc]
imul rdx, rax
shr rdx, 0x3e
xor edx, 0xeb154a5b
imul edx, edx, 0x17af17f3
mov word [rsp + 0x20], 2
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x30], 2
mov word [rsp + 0x38], 0
cmp edx, 0xe592fa35
je 0x140062a40
mov eax, dword [0x141dca000]
imul eax, dword [0x141dca004]
or eax, 0x2994df8
add eax, 0xbbadc1b1
or eax, 0xf9ae6a5d
cmp eax, 0x6328b559
jae 0x140062ab0
mov qword [rsp + 0x40], 1
mov eax, dword [0x141dca008]
and eax, dword [0x141dca00c]
shr eax, 1
imul rax, rax, 0x428997b5
shr rax, 0x3d
or eax, 0x10a60400
mov qword [rsp + 0x40], 1
cmp eax, 0x955aaeeb
ja 0x140062ab0
nop
mov eax, dword [0x141dca010]
imul eax, dword [0x141dca014]
xor eax, 0xb7b969c
add eax, 0xf683c49b
cmp eax, 0xaf806040
ja 0x140062ae0
mov r14d, 2
jmp 0x140063179
mov word [rsp + 0x20], 2
lea rax, [0x141db5d1f]
mov qword [rsp + 0x28], rax
mov eax, dword [str.4_m0]
xor eax, dword [0x141dc9f1c]
imul eax, eax, 0x5812df47
and eax, 0x3d1bf49e
add eax, 0xa4ca2a85
cmp eax, 0x6857a57d
jb 0x14006315f
jmp 0x140063134
mov word [rsp + 0x20], 2
lea rax, [0x141db5d22]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 3
jmp 0x140063179
mov eax, dword [0x141dc9f28]
imul eax, dword [0x141dc9f2c]
xor eax, 0x69bc06fe
imul eax, eax, 0x41c334eb
add eax, 0x8fd1ed1f
cmp eax, 0x3a21d8d0
jae 0x140062baa
lea rcx, [rsp + 0xb8]
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0xf7]
call fcn.14004ed70
lea rdi, [rsp + 0xb8]
lea rbx, [rsp + 0xd0]
lea r14, [rsp + 0xf7]
nop word cs:[rax + rax]
mov eax, dword [0x141dc9f30]
imul eax, dword [0x141dc9f34]
add eax, 0xd40a55ea
shr eax, 1
imul r13, rax, 0x113bbf55
shr r13, 0x3b
mov rcx, rdi
mov rdx, rbx
mov r8, r14
call fcn.14004ed70
cmp r13d, 0x765814de
je 0x140062bd0
mov eax, dword [0x141dc9f38]
xor edx, edx
div dword [0x141dc9f3c]
nop word cs:[rax + rax]
mov eax, dword [0x141dc9f40]
or eax, dword [0x141dc9f44]
xor eax, 0x800000
and eax, 0x841002
cmp eax, 0xb7b93df4
je 0x140062c20
mov rax, qword [rsp + 0xb8]
mov ecx, 0xf3c06475
nop word [rax + rax]
mov edx, dword [0x141dc9f48]
xor edx, dword [0x141dc9f4c]
or edx, 0x61147d8c
imul rdx, rcx
shr rdx, 0x3d
add edx, 0x44c3f21
cmp edx, 0x4b10b9f7
ja 0x140062c50
test rax, rax
je 0x140062e82
mov eax, dword [0x141dc9f50]
sub eax, dword [0x141dc9f54]
add eax, 0x55148a99
and eax, 0xfc1b73f7
cmp eax, 0x2c107cad
jne 0x140062cc0
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x90], rax
movups xmm0, xmmword [rsp + 0xb8]
movaps xmmword [rsp + 0x80], xmm0
nop
mov eax, dword [0x141dc9f58]
xor edx, edx
div dword [0x141dc9f5c]
imul rax, rax, 0x53da193d
shr rax, 0x3a
movups xmm0, xmmword [rsp + 0xb8]
movaps xmmword [rsp + 0x80], xmm0
mov rcx, qword [rsp + 0xc8]
mov qword [rsp + 0x90], rcx
cmp eax, 0x52a56be9
je 0x140062cc0
mov rcx, qword [rsp + 0x88]
test rcx, rcx
je 0x140062eb0
mov r8, qword [rsp + 0x80]
movsx rax, word [rsp + 0x90]
movzx r9d, ax
nop word cs:[rax + rax]
mov edx, dword [0x141dc9f70]
and edx, dword [0x141dc9f74]
xor edx, 0x2000012
or edx, 0xfc7fffed
cmp edx, 0xed02e003
je 0x140062d30
cmp byte [r8], 0x30
jbe 0x14006300e
mov edx, 0x81032643
nop
mov r10d, dword [0x141dc9f88]
imul r10d, dword [0x141dc9f8c]
or r10d, 0x7cfe5dde
imul r10, rdx
shr r10, 0x3e
or r10d, 0x6ba31004
cmp r10d, 0x754d097
jb 0x140062d60
test r9w, r9w
jle 0x140062ef4
nop dword [rax + rax]
mov eax, dword [0x141dc9f90]
and eax, dword [0x141dc9f94]
add eax, 0x142c2fa
or eax, 0x8d489c50
shr eax, 4
imul rax, rax, 0x976ea5f
shr rax, 0x37
cmp eax, 0x7c0e0e55
je 0x140062da0
mov eax, dword [0x141dc9f98]
or eax, dword [0x141dc9f9c]
or eax, 0x898b3d3b
and eax, 0x9bbb7d3f
cmp eax, 0xea42286
jae 0x140062e00
mov word [rsp + 0x20], 2
mov qword [rsp + 0x28], r8
nop word cs:[rax + rax]
mov eax, dword [0x141dc9fa0]
or eax, dword [0x141dc9fa4]
add eax, 0x4a683ca1
xor eax, 0x357624e6
add eax, 0x39c2b88f
mov word [rsp + 0x20], 2
mov qword [rsp + 0x28], r8
cmp eax, 0xa47e60e5
jb 0x140062e00
nop
mov eax, dword [0x141dc9fa8]
sub eax, dword [0x141dc9fac]
and eax, 0xc3b261d4
add eax, 0x952e4d80
cmp eax, 0xaa04d0ab
jb 0x140062e30
mov rax, r9
sub rax, rcx
jae 0x140062f03
mov eax, dword [0x141dc9fb8]
xor edx, edx
div dword [0x141dc9fbc]
imul eax, eax, 0x480041eb
or eax, 0xb251d9a
cmp eax, 0xf7dd73c6
je 0x14006309d
jmp 0x140063063
lea rcx, [rsp + 0x80]
lea rdx, [rsp + 0xd0]
lea r8, [rsp + 0xf7]
call fcn.140046d50
mov rcx, qword [rsp + 0x88]
test rcx, rcx
jne 0x140062d11
mov eax, dword [0x141dc9f60]
or eax, dword [0x141dc9f64]
xor eax, 0x6be5e8f5
cmp eax, 0x54397138
jbe 0x140062ed0
ud2
mov eax, dword [0x141dc9f68]
or eax, dword [0x141dc9f6c]
add eax, 0x3ec1f6e5
or eax, 0xe883dc9d
ud2
xor edx, edx
test dl, dl
jne 0x1400632a5
jmp 0x140063272
xor edx, edx
test dl, dl
je 0x140062f2d
mov qword [rsp + 0x30], rcx
mov word [rsp + 0x38], 0
mov qword [rsp + 0x40], rax
mov word [rsp + 0x50], 2
lea rdx, [0x141db92fb]
mov qword [rsp + 0x58], rdx
lea rdx, [0x141db92fb]
nop word cs:[rax + rax]
mov r8d, dword [0x141dc9fd0]
and r8d, dword [0x141dc9fd4]
imul r8d, r8d, 0x9231edfe
xor r8d, 0xd948ccca
mov qword [rsp + 0x30], rcx
mov word [rsp + 0x38], 0
mov qword [rsp + 0x40], rax
mov word [rsp + 0x50], 2
mov qword [rsp + 0x58], rdx
cmp r8d, 0x7675ae69
jb 0x140062f40
mov eax, dword [0x141dc9fd8]
sub eax, dword [0x141dc9fdc]
add eax, 0x367209eb
or eax, 0xec8ffa7f
cmp eax, 0x4659245c
jae 0x140062fb0
mov qword [rsp + 0x60], 1
nop dword [rax + rax]
mov eax, dword [0x141dc9fe0]
or eax, dword [0x141dc9fe4]
add eax, 0x588e7a16
shr eax, 3
imul rax, rax, 0x2136975
shr rax, 0x33
mov qword [rsp + 0x60], 1
cmp eax, 0x30453801
je 0x140062fb0
mov eax, dword [0x141dc9fe8]
add eax, dword [0x141dc9fec]
imul rax, rax, 0x2c0c042b
shr rax, 0x3d
cmp eax, 0x280fb8
movaps xmm0, xmmword [rax]
je 0x14006311a
jmp 0x1400630ed
mov r11b, 2
jmp 0x140062938
mov eax, dword [0x141dc9f78]
xor edx, edx
div dword [0x141dc9f7c]
or eax, 0x77807a87
xor eax, 0x91b254cb
imul eax, eax, 0x6f2665f0
cmp eax, 0xb8108b33
jbe 0x140063040
ud2
mov eax, dword [0x141dc9f80]
imul eax, dword [0x141dc9f84]
imul eax, eax, 0x8af497cb
or eax, 0xd77df7ad
ud2
ud2
mov eax, dword [0x141dc9fc0]
or eax, dword [0x141dc9fc4]
mov qword [rsp + 0x30], r9
mov word [rsp + 0x38], 2
lea rdx, [0x141db92fb]
mov qword [rsp + 0x40], rdx
imul eax, eax, 0xe2945418
mov qword [rsp + 0x48], 1
and al, 0x48
add dword [rax], eax
add byte [rax], al
cmp eax, 0x7379933d
jne 0x1400630c0
mov qword [rsp + 0x30], r9
mov word [rsp + 0x38], 2
lea rax, [0x141db92fb]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 1
jmp 0x140063063
sub rcx, r9
mov eax, dword [0x141dc9fc8]
imul eax, dword [0x141dc9fcc]
add r8, r9
add eax, 0x4311c15
and eax, 0x1f9c374c
cmp eax, 0x3a876fa3
ja 0x140063254
jmp 0x14006323d
mov eax, dword [0x141dc9ff0]
sub eax, dword [0x141dc9ff4]
add eax, 0xbe3cae6a
xor eax, 0x9d978d56
mov word [rsp + 0x68], 0
mov qword [rsp + 0x70], 1
cmp eax, 0xc94775db
jb 0x14006312c
mov word [rsp + 0x68], 0
mov qword [rsp + 0x70], 1
jmp 0x1400630ed
mov r14d, 4
jmp 0x140063179
mov eax, dword [0x141dc9f20]
or eax, dword [0x141dc9f24]
add eax, 0x114916c3
or eax, 0x48410840
and eax, 0xcc414959
mov qword [rsp + 0x30], 3
cmp eax, 0x72dae390
jbe 0x14006316a
mov qword [rsp + 0x30], 3
jmp 0x140063134
xor r15d, r15d
mov r12d, 1
mov r14d, 1
mov eax, dword [str._Az_g]
and eax, dword [0x141dca01c]
add eax, 0xda26ef89
cmp eax, 0xb868bce6
jbe 0x1400631c6
mov qword [rsp + 0x98], r12
mov qword [rsp + 0xa0], r15
lea rax, [rsp + 0x20]
mov qword [rsp + 0xa8], rax
mov qword [rsp + 0xb0], r14
lea rdx, [rsp + 0x98]
mov rcx, rsi
call fcn.1400602a0
lea r13, [rsp + 0x20]
lea rdi, [rsp + 0x98]
nop word cs:[rax + rax]
mov eax, dword [0x141dca020]
xor edx, edx
div dword [0x141dca024]
mov ebx, eax
add ebx, 0x3386865c
mov qword [rsp + 0x98], r12
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0xa8], r13
mov qword [rsp + 0xb0], r14
mov rcx, rsi
mov rdx, rdi
call fcn.1400602a0
cmp ebx, 0xbef1c476
ja 0x1400631e0
add rsp, 0x108
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov word [rsp + 0x50], 2
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rcx
mov al, 1
test al, al
jne 0x140063267
mov word [rsp + 0x50], 2
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rcx
jmp 0x14006323d
mov r14d, 3
jmp 0x140063179
mov edx, dword [0x141dc9fb0]
and edx, dword [0x141dc9fb4]
mov word [rsp + 0x20], 2
lea r9, [0x141db5d18]
mov qword [rsp + 0x28], r9
add edx, 0x8bbdc9d2
and edx, 0xe063ff2a
cmp edx, 0x159beec3
jne 0x1400632ba
mov word [rsp + 0x20], 2
lea rdx, [0x141db5d18]
mov qword [rsp + 0x28], rdx
jmp 0x140063272
neg rax
mov qword [rsp + 0x30], 2
mov word [rsp + 0x38], 0
mov qword [rsp + 0x40], rax
mov word [rsp + 0x50], 2
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rcx
mov r14d, 3
jmp 0x140063179