Function at 0x140084010
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x60
mov qword [rsp + 0x50], rcx
mov rax, qword [rcx + 0x10]
mov qword [rsp + 0x58], rax
cmp rax, 0
je 0x14008421a
mov r11d, dword [0x1401dbde8]
mov r10d, dword [0x1401dbdec]
mov eax, 0x2cbfc83
xor eax, 0xfd34037c
mov ecx, r11d
xor ecx, eax
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb06ab7a3
mov eax, ecx
and eax, 0xb06ab7a3
and r11d, edx
mov esi, 0x6ab89103
xor esi, 0xdad226a0
mov r9d, r8d
and r9d, esi
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x26efe1c7
xor r8d, 0xd9101e38
xor ecx, r8d
or edx, 0xb06ab7a3
and ecx, edx
or eax, ecx
mov ecx, 0xa4fb7275
xor ecx, 0x9accc172
and eax, ecx
xor eax, 0xeca3651d
mov ecx, 0xffffffff
xor ecx, 0xa76b0e52
add eax, ecx
add eax, 1
mov ecx, 0x5449d538
xor ecx, 0x57856d5c
cmp eax, ecx
jb 0x140084571
mov rcx, qword [rsp + 0x58]
mov edx, dword [0x1401dbdf0]
imul edx, dword [0x1401dbdf4]
mov eax, 0xed7048c4
xor eax, 0x49754861
sub edx, eax
sub edx, 0x7ebfd1f1
add edx, 0xa40500a5
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edx, 0xffffffff
xor edx, 0x8df9b22f
mov r8d, 0xd1c78b6f
xor r8d, 0x5c3e3940
mov r9d, 0x49b307d6
xor r9d, 0xb64cf829
xor r8d, r9d
or edx, r8d
xor eax, 0xffffffff
mov r8d, 0x6070b608
xor r8d, 0x9f8f49f7
xor edx, r8d
or eax, edx
mov edx, 0xd8f666c8
xor edx, 0x2435c3c4
mov r8d, 0xd4ed26f1
xor r8d, 0x2b12d90e
xor edx, r8d
mov r8d, 0x64d20c3f
xor r8d, 0x64d20c3f
mov r9d, 0xd20ea2c2
xor r9d, 0xd20ea2c3
sub r8d, r9d
sub edx, r8d
sub eax, edx
mov rcx, qword [rcx]
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor r8, rdx
movabs rdx, 0x5ca0573513248f38
movabs r9, 0x7ed2b31aa5f0a37a
xor rdx, r9
movabs r9, 0x638085d14add4601
movabs r10, 0x9c7f7a2eb522b9fe
xor r9, r10
xor rdx, r9
or rcx, r8
movabs r8, 0x2272e42fb6d42c42
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
sete cl
mov byte [rsp + 0x4f], cl
cmp eax, 0xdfd1c2fa
jae 0x140084571
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x140084210
jmp 0x14008421a
mov rcx, qword [rsp + 0x58]
call fcn.14000de03
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x20]
mov qword [rsp + 0x40], rax
cmp rax, 0
je 0x140084332
mov eax, dword [0x1401dbdf8]
xor eax, dword [0x1401dbdfc]
imul eax, eax, 0x2e7368de
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x3bc6fbd
mov edx, 0x68592e86
xor edx, 0x6be5413b
mov r8d, 0x1975b723
xor r8d, 0xe68a48dc
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x4060448f
xor edx, 0xbf9fbb70
xor ecx, edx
and eax, ecx
mov edx, 0x9949b6d8
xor edx, 0x194ffe0f
mov ecx, eax
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x800648d7
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x17b004b6
jb 0x14008457a
mov rdx, qword [rsp + 0x40]
mov eax, dword [0x1401dbe00]
xor eax, 0xec8871b4
imul eax, dword [0x1401dbe04]
imul eax, eax, 0x481898b6
mov ecx, 0x21dd4367
xor ecx, 0xb194fe69
sub eax, ecx
sub eax, 0xaf29d813
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
movabs rdx, 0x3b300176f03011bf
movabs r8, 0x3b300176f03011bf
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rsp + 0x3f], cl
cmp eax, 0x8acb6ba7
jbe 0x1400842af
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x140084328
jmp 0x140084332
mov rcx, qword [rsp + 0x40]
call fcn.14000de03
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x30], rax
cmp rax, 0
je 0x14008452c
mov eax, dword [0x1401dbe08]
and eax, dword [0x1401dbe0c]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov edx, 0xa1fcf31c
xor edx, 0xdc0a9b17
or eax, edx
add eax, ecx
mov ecx, 0xf82039a5
xor ecx, 0x73e48cb
xor edx, edx
div ecx
mov ecx, 0x48b833ec
xor edx, edx
div ecx
mov ecx, 0xf7585869
xor ecx, 0x44f0f1ea
cmp eax, ecx
ja 0x140084583
mov rcx, qword [rsp + 0x30]
mov edx, dword [0x1401dbe10]
and edx, dword [0x1401dbe14]
xor edx, 0xed5b47d0
or edx, 0xa8f7d6cb
mov r8d, 0x24973c84
xor r8d, 0xdb68c37b
mov eax, edx
xor eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x101a3d04
and eax, r8d
or edx, 0x101a3d04
xor edx, 0xffffffff
or eax, edx
mov edx, 0x957aaf30
xor edx, 0x6a8550cf
xor eax, edx
mov rcx, qword [rcx]
or rcx, rcx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
and rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
sete cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x4f87ed78
jb 0x140084398
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x140084452
jmp 0x14008452c
mov ecx, dword [0x1401dbe18]
mov edx, dword [0x1401dbe1c]
mov eax, ecx
and eax, edx
shl eax, 1
add ecx, edx
sub ecx, eax
add ecx, 0x7c81ac8b
mov eax, 0x85c79dae
xor eax, 0xc563235b
xor ecx, eax
mov edx, 0xffffffff
xor edx, 0x44fe2a8e
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0xc2d918ba
jae 0x14008458c
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x1401dbe20]
xor edx, edx
div dword [0x1401dbe24]
mov r9d, eax
and r9d, 0x1e35df45
mov edx, 0x44607b12
xor edx, 0x5a55a457
xor eax, edx
or r9d, eax
sub r9d, 0x143c6cce
mov eax, r9d
xor eax, 0xffffffff
and eax, 0x864d5a3e
mov r10d, 0xffffffff
xor r10d, 0x864d5a3e
and r9d, r10d
mov edx, 0xffffffff
xor edx, 0xeb4e23b7
and edx, 0x864d5a3e
mov r8d, 0xb6294787
xor r8d, 0x5d676430
and r8d, r10d
or eax, r9d
or edx, r8d
xor eax, edx
mov dword [rsp + 0x28], eax
call fcn.14000de03
mov eax, dword [rsp + 0x28]
cmp eax, 0x80484364
jbe 0x140084497
jmp 0x14008452c
mov rax, qword [rsp + 0x50]
mov rax, qword [rax + 0x50]
mov qword [rsp + 0x20], rax
cmp rax, 0
je 0x14008456a
mov rcx, qword [rsp + 0x20]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14008456a
mov rcx, qword [rsp + 0x20]
call fcn.14000de03
nop
add rsp, 0x60
pop rsi
ret
sub esp, ebp
cmp ecx, dword [rdx]
jmp 0x1400840d5
invalid
mov cl, 0x42
invalid
fcomp qword [rbx + 0x2e95f0b]
invalid