Function at 0x14007393d
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x48], rdx
mov qword [rsp + 0x40], rcx
call fcn.140071710
mov rdx, qword [rsp + 0x48]
mov qword [rsp + 0x50], rax
movabs rax, 0xafae347393078905
movabs rcx, 0x5051cb8c6cf876e5
xor rax, rcx
cmp rdx, rax
jge 0x140073554
mov rax, qword [rsp + 0x48]
movabs rcx, 0xd46e7fa8c291ed77
movabs rdx, 0x2b9180574291ed77
xor rcx, rdx
cmp rax, rcx
jae 0x140073333
mov rcx, qword [rsp + 0x40]
mov edx, 0xd3
call fcn.14003aadb
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140073857
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
call fcn.1400731ad
jmp 0x140073857
mov rax, qword [rsp + 0x48]
cmp rax, 0xffffffffffff8000
jae 0x1400734c2
mov eax, dword [0x1401f4ad8]
mov r8d, dword [0x1401f4adc]
xor r8d, 0x39e8e21c
mov ecx, 0x1779389c
xor ecx, 0xe886c763
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, 0xf4b06f5
xor edx, 0xda1f0535
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
mov edx, 0xb360093d
xor edx, 0x66340afd
or eax, edx
and eax, ecx
sub eax, 0xf25b4f75
mov ecx, 0x1bf9e59
xor ecx, 0x3b7df9a5
sub eax, ecx
add eax, 0xf25b4f75
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x8585bf74
mov edx, 0xffffffff
xor edx, 0x8585bf74
and ecx, edx
mov edx, 0xc5e72689
xor edx, 0x3a18d976
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0x4009f11d
jae 0x140073919
mov rcx, qword [rsp + 0x40]
mov edx, dword [0x1401f4ae0]
sub edx, dword [0x1401f4ae4]
mov eax, edx
and eax, 0x7eb0fc2e
xor eax, 0xffffffff
add edx, 0x7eb0fc2e
add edx, 1
add edx, eax
xor edx, 0xc3a42a79
mov eax, edx
or eax, eax
mov r8d, 0x8b92f226
xor r8d, 0x746d0dd9
xor eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x994976ae
mov r9d, 0xffffffff
xor r9d, 0x994976ae
and r8d, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, 0x994976ae
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov dword [rsp + 0x38], eax
mov edx, 0xd2
call fcn.14003aadb
mov rcx, qword [rsp + 0x50]
mov eax, dword [rsp + 0x38]
mov cl, byte [rcx]
mov dl, 0x92
xor dl, 0x92
cmp cl, dl
sete cl
mov byte [rsp + 0x3f], cl
cmp eax, 0x52dd7b42
ja 0x1400733f8
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x1400734ac
jmp 0x140073857
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov edx, eax
call fcn.140071dd5
jmp 0x140073857
mov rax, qword [rsp + 0x48]
movabs rcx, 0x37fba08de21ecca1
movabs rdx, 0xc8045f721de13321
xor rcx, rdx
cmp rax, rcx
jae 0x140073521
mov rcx, qword [rsp + 0x40]
mov edx, 0xd1
call fcn.14003aadb
mov rax, qword [rsp + 0x50]
mov al, byte [rax]
mov cl, 0x48
xor cl, 0x48
cmp al, cl
jne 0x140073857
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov dx, ax
call fcn.140071b40
jmp 0x140073857
mov rcx, qword [rsp + 0x40]
mov edx, 0xd0
call fcn.14003aadb
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140073857
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov dl, al
call fcn.14003aadb
jmp 0x140073857
mov rax, qword [rsp + 0x48]
movabs rcx, 0x2fd685829a16223
movabs rdx, 0x2fd685829a162a3
xor rcx, rdx
cmp rax, rcx
jge 0x14007359d
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140073857
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov dl, al
call fcn.14003aadb
jmp 0x140073857
mov rax, qword [rsp + 0x48]
cmp rax, 0x100
jae 0x1400735e1
mov rcx, qword [rsp + 0x40]
mov edx, 0xcc
call fcn.14003aadb
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140073857
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov dl, al
call fcn.14003ab82
jmp 0x140073857
mov rax, qword [rsp + 0x48]
cmp rax, 0x10000
jae 0x1400737e0
mov eax, dword [0x1401f4ae8]
mov edx, dword [0x1401f4aec]
xor edx, 0x663449d3
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
add eax, 0xe77569a6
and eax, 0x8f103f6d
mov ecx, 0x6ef15fbe
xor ecx, 0xefe00411
imul eax, ecx
cmp eax, 0xd97f75b
je 0x140073922
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x1401f4af0]
mov r8d, dword [0x1401f4af4]
xor r8d, 0x4b6bed5f
xor edx, edx
div r8d
mov edx, eax
mov r8d, 0xffffffff
xor r8d, 0x59db8872
mov eax, edx
xor eax, r8d
and eax, edx
imul eax, eax, 0x3a89c5a7
imul eax, eax, 0x309aafe0
mov dword [rsp + 0x30], eax
mov eax, 0x29b2c71e
xor eax, 0x974bc41b
mov dword [rsp + 0x2c], eax
mov dl, 0x62
xor dl, 0xaf
call fcn.14003aadb
mov rdx, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x2c]
mov eax, dword [rsp + 0x30]
cmp byte [rdx], 0
sete dl
mov byte [rsp + 0x37], dl
cmp eax, ecx
jae 0x140073922
mov al, byte [rsp + 0x37]
test al, 1
jne 0x1400736be
jmp 0x140073857
mov eax, dword [0x1401f4af8]
xor eax, 0xe82db508
mov r8d, dword [0x1401f4afc]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xadb3f69e
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xadb3f69e
or eax, 0xadb3f69e
imul eax, edx
add eax, ecx
xor eax, 0x46d8ad61
and eax, 0xd310b2d2
mov ecx, 0x41ce6351
xor ecx, 0x1ea69e3f
cmp eax, ecx
ja 0x14007392b
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x1401f4b00]
xor edx, edx
div dword [0x1401f4b04]
mov edx, eax
mov rax, qword [rsp + 0x48]
xor r8d, r8d
sub r8d, edx
mov edx, 0x1bbf1111
xor edx, 0x1bbf1111
mov r9d, 0x48fad800
xor r9d, 0x4a75bfe1
sub edx, r9d
add r8d, edx
mov edx, 0x4f28d9dc
xor edx, 0x4f28d9dc
sub edx, r8d
sub edx, 0x96448ccf
mov r8d, 0x978b38af
xor r8d, 0x3f0d2122
add edx, r8d
add edx, 0x96448ccf
add edx, 0x66a53c05
mov dword [rsp + 0x28], edx
mov edx, 0xea4d602c
xor edx, 0x1d3f187f
mov dword [rsp + 0x24], edx
mov dx, ax
call fcn.140071b40
mov ecx, dword [rsp + 0x24]
mov eax, dword [rsp + 0x28]
cmp eax, ecx
je 0x140073742
jmp 0x140073857
mov rax, qword [rsp + 0x48]
movabs rcx, 0x100000000
cmp rax, rcx
jae 0x14007382b
mov rcx, qword [rsp + 0x40]
mov edx, 0xce
call fcn.14003aadb
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140073857
mov rcx, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov edx, eax
call fcn.140071dd5
jmp 0x140073857
mov rcx, qword [rsp + 0x40]
mov edx, 0xcf
call fcn.14003aadb
mov rax, qword [rsp + 0x50]
cmp byte [rax], 0
jne 0x140073857
mov rdx, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x40]
call fcn.1400731ad
mov eax, dword [0x1401f4b08]
mov ecx, dword [0x1401f4b0c]
mov edx, 0xf004bde8
xor edx, 0xf80edee3
sub eax, edx
sub eax, ecx
add eax, 0x80a630b
mov ecx, 0xffffffff
xor ecx, 0x71b31d0a
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov edx, 0xf06c2dec
xor edx, 0x8092af7a
mov ecx, 0x3d9bf494
xor ecx, 0xc2640b6b
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x70fe8296
add eax, edx
sub eax, ecx
and eax, 0xfaa40ea2
mov ecx, 0x6c222abf
xor ecx, 0xcff65f56
cmp eax, ecx
jb 0x140073934
mov eax, dword [0x1401f4b10]
xor edx, edx
div dword [0x1401f4b14]
mov ecx, eax
mov edx, 0x29877fbf
xor edx, 0x597f9cc7
mov eax, ecx
and eax, edx
xor ecx, 0x70f8e378
or eax, ecx
add eax, 0x8626beb2
mov ecx, eax
xor ecx, 0xe82d4c67
xor ecx, 0xffffffff
or eax, 0xe82d4c67
and eax, ecx
cmp eax, 0x4c91d039
jbe 0x1400738cb
add rsp, 0x58
ret
sbb bl, byte [rdi - 0x28]
ret
mov cl, cl
int 0xdb
jmp 0x140073632
sub eax, 0xe9a8976c
invalid
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.140071710
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x1400732a0