Function at 0x140083130
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xd8
mov qword [rsp + 0xb0], r9
mov qword [rsp + 0xa8], r8
mov qword [rsp + 0x98], rdx
mov qword [rsp + 0xa0], rcx
call fcn.1400838bb
mov rcx, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
mov r9, qword [rsp + 0xb0]
mov rax, qword [rcx]
mov qword [rsp + 0xb8], rax
add rcx, 8
mov qword [rsp + 0xc0], rcx
xor eax, eax
test r8, r8
cmovg rax, r8
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], r9
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x90], rax
cmp rax, rcx
jge 0x1400836d1
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0xa0]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x88], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400831fb
jmp 0x1400835b4
mov rcx, qword [rsp + 0x90]
mov rax, qword [rsp + 0xc0]
mov rax, qword [rax]
mov al, byte [rax + rcx + 8]
mov byte [rsp + 0x7f], al
xor eax, eax
mov qword [rsp + 0x80], rax
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rsp + 0x80]
mov qword [rsp + 0x70], rax
cmp rax, rcx
je 0x140083322
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x70]
mov dl, byte [rsp + 0x7f]
cmp byte [rax + rcx], dl
je 0x14008329b
mov rdx, qword [rsp + 0x70]
movabs rcx, 0xd6cb1b9317d5a4cf
movabs rax, 0xd6cb1b9317d5a4ce
xor rcx, rax
mov rax, rdx
add rax, rcx
xor rdx, 0xffffffffffffffff
mov rcx, rax
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x80], rax
jge 0x140083220
call fcn.140007f57
mov rax, qword [rsp + 0x70]
cmp rax, 0xffffffffffffffff
jle 0x140083322
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xc0]
mov rcx, qword [rcx]
mov qword [rsp + 0x60], rcx
cmp rcx, 0
mov qword [rsp + 0x68], rax
je 0x140083893
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x60]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
movabs r8, 0x58ff938b6be15a8
movabs r9, 0x58ff938b6be15a8
xor r8, r9
cmp rdx, r8
mov qword [rsp + 0x50], rcx
mov rcx, rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x68], rax
je 0x140083875
jmp 0x140083893
mov rdx, qword [rsp + 0x90]
movabs rcx, 0xab482af231ea69fc
mov rax, rdx
sub rax, rcx
movabs rcx, 0x63b57c30c134a374
movabs r8, 0x63b57c30c134a375
xor rcx, r8
add rax, rcx
movabs rcx, 0x2214fa94fd5c93fb
movabs r8, 0x895cd066ccb6fa07
xor rcx, r8
add rax, rcx
movabs r8, 0xd5a4630580fa795
movabs rcx, 0xf2a5b9cfa7f0586a
xor r8, rcx
mov rcx, rdx
and rcx, r8
shl rcx, 1
movabs r8, 0x7f3b3c64feea0391
movabs r9, 0x80c4c39b0115fc6e
xor r8, r9
add rdx, r8
sub rdx, rcx
mov rcx, rax
xor rcx, 0xffffffffffffffff
movabs r8, 0x754bb5117afd494c
movabs r9, 0x8ab44aee8502b6b3
xor r8, r9
xor rdx, r8
movabs r8, 0xdceba5104e716f86
movabs r9, 0x3fdb03ea1e72bbdb
xor r8, r9
movabs r9, 0x90a2daaa21024377
movabs r10, 0x6f5d2555defdbc88
xor r9, r10
xor r8, r9
or rcx, rdx
movabs rdx, 0x25cefcd799cddf8e
movabs r9, 0xc6fe5a2dc9ce0bd3
xor rdx, r9
or rdx, r8
movabs r8, 0x21e1ae46ca1ac974
movabs r9, 0xde1e51b935e5368b
xor r8, r9
xor rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0xd0], rax
jge 0x1400831a4
mov ecx, dword [0x140204158]
xor ecx, 0xb3e76fa1
mov r8d, dword [0x14020415c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov r9d, r8d
xor r9d, 0xffffffff
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
xor ecx, 0x4f4b1a37
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x7f84e379
xor r8d, 0x807b1c86
mov edx, ecx
xor edx, r8d
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe224a006
or eax, edx
mov edx, 0x7445e295
xor edx, 0x96614293
mov r8d, 0x1054fee2
xor r8d, 0xefab011d
xor edx, r8d
mov r8d, 0xffffffff
xor r8d, 0xe224a006
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x26e2d53b
xor ecx, 0xd91d2ac4
xor eax, ecx
mov ecx, 0xd0082367
xor ecx, 0x51329ffd
xor edx, edx
div ecx
mov ecx, 0x9d1336e8
xor ecx, 0x32ca4e2b
cmp eax, ecx
ja 0x1400838a0
mov ecx, dword [0x140204160]
mov edx, dword [0x140204164]
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov r8d, edx
or r8d, r8d
mov r9d, 0x57e6a832
xor r9d, 0xa81957cd
xor r8d, r9d
or eax, r8d
mov r8d, 0x6ab726d8
xor r8d, 0x9548d927
xor eax, r8d
or ecx, edx
mov edx, 0x3ff62609
xor edx, 0xc009d9f6
xor ecx, edx
or eax, ecx
mov ecx, 0xb48b97c1
xor ecx, 0x4b74683e
xor eax, ecx
mov ecx, 0x5f14d3ac
xor ecx, 0x4bcd0d1e
xor eax, ecx
or eax, 0xb27d5d1e
mov ecx, 0x9b326fce
xor edx, edx
div ecx
mov dword [rsp + 0x4c], eax
mov eax, 0xf50dd9ce
xor eax, 0xfacb25a2
mov dword [rsp + 0x48], eax
call fcn.140007f57
mov ecx, dword [rsp + 0x48]
mov eax, dword [rsp + 0x4c]
cmp eax, ecx
je 0x140083513
jmp 0x140083747
mov eax, dword [0x140204168]
sub eax, dword [0x14020416c]
sub eax, 0xd919f9fd
add eax, 0xd8e905f8
add eax, 0x8f16e95b
mov ecx, 0xea17372a
xor ecx, 0x32fe32d2
sub eax, ecx
mov edx, 0xffffffff
xor edx, 0x197999a4
mov ecx, eax
and ecx, edx
mov r8d, 0xd124212b
xor r8d, 0xc85db88f
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
mov ecx, 0x36a503e0
xor ecx, 0x6d0ba71b
cmp eax, ecx
jbe 0x1400838a9
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x88]
mov r9d, dword [0x140204170]
xor r9d, 0x3b2338bc
xor r9d, dword [0x140204174]
mov eax, 0xc66012b5
xor eax, 0xf062ea9
mov r8d, r9d
xor r8d, eax
mov eax, 0x7818b4df
xor eax, 0xb17e88c3
mov r10d, 0xa0e66919
xor r10d, 0x5f1996e6
xor eax, r10d
and r9d, eax
mov eax, 0xc1d5673c
xor eax, 0xc1d5673e
imul eax, r9d
sub eax, r8d
mov r8d, 0x64df671e
xor r8d, 0xa991cf73
imul eax, r8d
mov r8d, eax
add r8d, 1
xor eax, 0xffffffff
or eax, 0xc6629029
add eax, r8d
mov dword [rsp + 0x44], eax
movabs rax, 0xd7c97001a07e3dec
movabs r8, 0x28368ffe5f81c213
xor rax, r8
add rdx, rax
call fcn.140014583
mov eax, dword [rsp + 0x44]
cmp eax, 0x908c18d7
ja 0x140083614
jmp 0x140083747
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rax]
mov qword [rsp + 0x38], rcx
mov rax, 0xffffffffffffffff
cmp rcx, 0
mov qword [rsp + 0x68], rax
je 0x140083893
mov rcx, qword [rsp + 0x38]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
movabs r8, 0xd475ed0f60c9f493
movabs rax, 0xd475ed0f60c9f493
xor r8, rax
mov rax, 0xffffffffffffffff
cmp rdx, r8
mov qword [rsp + 0x50], rcx
mov rcx, rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x68], rax
je 0x140083875
jmp 0x140083893
mov eax, dword [0x140204178]
mov ecx, 0x17bd7356
xor ecx, 0xc047a0c1
xor eax, ecx
imul eax, dword [0x14020417c]
sub eax, 0x6d7a1e3
or eax, 0x45f9a928
mov ecx, 0xef999871
xor ecx, 0x547c12da
add eax, ecx
add eax, 0xebe375fd
sub eax, 0xbbe58aab
mov ecx, 0x78b906b6
xor ecx, 0xc2162570
cmp eax, ecx
jae 0x1400838b2
mov rcx, qword [rsp + 0xc0]
mov eax, dword [0x140204180]
xor eax, 0x6f8df975
imul eax, dword [0x140204184]
mov edx, 0xc7ea3df1
xor edx, 0xeaaf5884
add eax, edx
sub eax, 0x438203da
sub eax, 0x2d456575
xor eax, 0x7c8d129a
sub eax, 0x2d6b65bb
add eax, 0xb5daa7e1
mov edx, 0x9699ae35
xor edx, 0xbbf2cb8e
add eax, edx
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
cmp rcx, 0
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0x53341d28
je 0x140083795
mov cl, byte [rsp + 0x37]
xor eax, eax
test cl, 1
mov qword [rsp + 0x68], rax
jne 0x140083893
jmp 0x140083819
mov rcx, qword [rsp + 0x28]
mov rax, qword [rcx]
movabs r8, 0x4000000000000000
mov rdx, rax
and rdx, r8
xor rdx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
or rax, r8
and rdx, rax
xor rdx, 0xffffffffffffffff
xor eax, eax
cmp rdx, 0
mov qword [rsp + 0x50], rcx
mov rcx, rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x68], rax
jne 0x140083893
mov rcx, qword [rsp + 0x50]
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x20], rax
call fcn.14000fb44
mov rax, qword [rsp + 0x20]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x68]
add rsp, 0xd8
ret
call 0x129f341ef
push 0xfffffffffffffffc
invalid
rcl ebp, 1
mov bl, 0xac
jmp 0x140083614
lahf
fld xword [rbx]
mov esi, 0xfffedae9
dec dword [rax - 0x7d]
sub rsp, 0x28
mov rax, qword [0x140217170]