Function at 0x140031f10
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x68
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x58], rcx
mov rdx, qword [rcx]
movabs rcx, 0xaf4434af23a6e4d9
movabs rax, 0x173ab4c81ac1eea4
xor rcx, rax
mov rax, rdx
add rax, rcx
add rax, 0xffffffffffffffff
movabs rcx, 0xb87e806739670a7d
sub rax, rcx
mov qword [rsp + 0x60], rax
movabs r8, 0xc79c077a176a6fb3
movabs rcx, 0x3863f885e895904c
xor r8, rcx
mov rcx, rax
xor rcx, r8
movabs r9, 0x5b12457278a76715
movabs r8, 0xa4edba8d875898ea
xor r9, r8
mov r8, rax
xor r8, r9
or rcx, r8
movabs r8, 0x9026fa8098b9e036
movabs r9, 0x6fd9057f67461fc9
xor r8, r9
xor rcx, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
or rcx, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or r8, rdx
mov rdx, rax
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
movabs r8, 0x61fb291b11bf1623
movabs r9, 0x9e04d6e4ee40e9dc
xor r8, r9
xor rcx, r8
movabs r8, 0x3df339b359a6b9f9
movabs r9, 0xc20cc64ca6594606
xor r8, r9
xor rdx, r8
or rcx, rdx
cmp rcx, 0
setl dl
cmp rax, 0xffffffffffffffff
setg al
or al, al
xor al, 0xff
mov cl, dl
xor cl, 0xff
xor dl, 0xff
and cl, dl
or al, cl
xor al, 0xff
test al, 1
jne 0x14003204d
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
add rcx, 8
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x48], rax
jmp 0x14003211a
mov ecx, dword [0x1401dc8d8]
mov edx, dword [0x1401dc8dc]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, ecx
or eax, 0xd735a6b7
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd735a6b7
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xf379b196
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x4dd2b883
xor r8d, 0xbeab0915
mov edx, eax
and edx, r8d
or eax, 0xf379b196
imul eax, edx
add eax, ecx
sub eax, 0x78a913c6
cmp eax, 0x4f084be
jb 0x140032664
mov eax, dword [0x1401dc8e0]
imul eax, dword [0x1401dc8e4]
mov ecx, 0xab0d91a9
xor ecx, 0x787d5512
sub eax, ecx
sub eax, 0xd4c18c73
add eax, 0xd370c4bb
sub eax, 0x5f99ba5b
sub eax, 0xb80ddf2d
mov dword [rsp + 0x3c], eax
call fcn.1400067fe
mov eax, dword [rsp + 0x3c]
cmp eax, 0x8c1e39a3
jbe 0x1400320cf
jmp 0x14003265f
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
mov ecx, dword [0x1401dc8e8]
xor ecx, 0xd477dff
mov r8d, dword [0x1401dc8ec]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, r8d
mov edx, 0xbbbcd962
xor edx, 0x4443269d
xor eax, edx
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x2f08839d
xor edx, 0xd0f77c62
xor ecx, edx
or eax, ecx
and eax, 0xbad471d
imul eax, eax, 0xe7921fa5
xor ecx, ecx
sub ecx, 0xa12e21d9
add eax, ecx
mov ecx, 0x4ba051e4
xor ecx, 0x993aec54
cmp eax, ecx
je 0x14003266d
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x50]
mov eax, dword [0x1401dc8f0]
xor eax, dword [0x1401dc8f4]
add eax, 0xebc512c6
mov r8d, 0xf13916f9
xor r8d, 0x96538df9
or eax, r8d
mov r8d, 0xffffffff
xor r8d, 0xd4ce01c2
add eax, r8d
add eax, 1
cmp rcx, rdx
setl cl
mov byte [rsp + 0x2f], cl
cmp eax, 0x378716dc
je 0x14003219d
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x140032652
jmp 0x140032201
mov eax, dword [0x1401dc8f8]
xor eax, 0x8ba95045
mov ecx, dword [0x1401dc8fc]
xor ecx, 0x21647ac0
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xd0db8bc7
add eax, ecx
add eax, 1
mov ecx, 0xf09befc5
xor ecx, 0xc1dafd3f
and ecx, eax
xor ecx, 0xffffffff
mov edx, 0x401134df
xor edx, 0x71502625
add eax, edx
mov edx, 0x452d9435
xor edx, 0x452d9434
add eax, edx
add eax, ecx
imul eax, eax, 0x6eaa457b
cmp eax, 0x269fbeb0
jbe 0x140032676
mov rdx, qword [rsp + 0x30]
mov eax, dword [0x1401dc900]
xor eax, 0x2ca380a7
mov r8d, dword [0x1401dc904]
mov ecx, eax
and ecx, r8d
shl ecx, 1
xor eax, r8d
add eax, ecx
mov ecx, 0x97e156aa
xor ecx, 0xccb96bf
or eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x167dd519
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, r8d
mov r8d, eax
and r8d, 0x167dd519
or eax, 0x167dd519
imul eax, r8d
add eax, ecx
and eax, 0xa688cbbf
mov ecx, 0x89481b09
xor ecx, 0xca4e5f0b
movabs r8, 0x6beab783c02a3759
movabs r9, 0x6beab783c02a3759
xor r8, r9
cmp rdx, r8
setl dl
mov byte [rsp + 0x2e], dl
cmp eax, ecx
jae 0x140032676
mov al, byte [rsp + 0x2e]
test al, 1
jne 0x140032434
jmp 0x140032316
mov eax, dword [0x1401dc908]
mov ecx, 0x8e82c8ea
xor ecx, 0x9391854a
xor eax, ecx
imul eax, dword [0x1401dc90c]
mov ecx, 0x6269ebd9
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x60b0ef16
mov edx, 0xb0b6328d
xor edx, 0x4f49cd72
mov eax, ecx
xor eax, edx
mov edx, 0x956a71c6
xor edx, 0x6a958e39
xor ecx, edx
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xe85e0b60
mov edx, 0xffffffff
xor edx, 0xe85e0b60
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0xc748816f
ja 0x14003267f
mov r8, qword [rsp + 0x58]
mov eax, dword [str.Ikg_]
mov ecx, 0x14a95541
xor ecx, 0xb93f923d
xor eax, ecx
and eax, dword [0x1401dc914]
mov ecx, 0xe8dbb3b
xor edx, edx
div ecx
mov r9d, eax
mov ecx, r9d
xor ecx, 0xffffffff
mov eax, 0x1690842e
xor eax, 0xf1c5e97
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x198cdab9
and r9d, edx
mov ecx, 0xffffffff
xor ecx, 0x79aba3b0
and ecx, 0x198cdab9
and edx, 0x79aba3b0
or eax, r9d
or ecx, edx
xor eax, ecx
mov ecx, 0xed9e8396
xor ecx, 0xab5cc9e8
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x30]
mov ecx, 0x39654070
xor ecx, 0xb25af38c
cmp rdx, qword [r8]
setl dl
mov byte [rsp + 0x2d], dl
cmp eax, ecx
je 0x14003267f
mov al, byte [rsp + 0x2d]
test al, 1
jne 0x14003257f
jmp 0x140032434
mov ecx, dword [0x1401dc918]
mov edx, dword [0x1401dc91c]
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov r8d, 0x27f2e206
xor r8d, 0xd80d1df9
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, eax
and ecx, 0x27bea436
shl ecx, 1
xor eax, 0x27bea436
add eax, ecx
xor ecx, ecx
sub ecx, 0xf7c9530d
sub eax, ecx
mov ecx, eax
xor ecx, 0x640f4c93
mov edx, 0xd1e0b976
xor edx, 0x2e1f4689
xor ecx, edx
mov edx, 0x8cb36d7a
xor edx, 0xe8bc21e9
or eax, edx
and eax, ecx
cmp eax, 0x3e313b5b
je 0x140032688
mov ecx, dword [0x1401dc920]
mov edx, dword [0x1401dc924]
mov eax, edx
and eax, ecx
xor eax, 0xffffffff
add ecx, edx
mov edx, 0xe0379c67
xor edx, 0xe0379c66
add ecx, edx
add ecx, eax
mov eax, 0x6edb9b2
xor eax, 0x25e8b7b9
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x845bb818
xor edx, 0x4ccef3e
and edx, eax
mov r8d, 0xffffffff
xor r8d, 0x80975726
mov eax, ecx
and eax, r8d
imul eax, edx
mov edx, ecx
and edx, 0x80975726
or ecx, 0x80975726
imul ecx, edx
add ecx, eax
mov eax, ecx
or eax, eax
mov edx, 0x1b8b1b7b
xor edx, 0xe474e484
xor eax, edx
mov edx, 0xecb10194
or edx, 0xecb10194
mov r8d, 0xc28dfef9
xor r8d, 0x3d720106
xor edx, r8d
or eax, edx
xor eax, 0xffffffff
or ecx, 0xecb10194
mov edx, 0x299db88e
xor edx, 0xd6624771
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov dword [rsp + 0x28], eax
mov rcx, rdx
call fcn.1400137e9
mov eax, dword [rsp + 0x28]
cmp eax, 0x996e3c34
je 0x140032688
jmp 0x14003265f
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx]
add rcx, 8
imul rax, rax, 0x18
add rcx, rax
call fcn.140031ecc
mov rcx, qword [rsp + 0x30]
movabs rdx, 0x79bc85b2d63360b4
mov rax, rcx
add rax, rdx
add rax, 0xffffffffffffffff
movabs rdx, 0x1222178844b08f22
movabs r8, 0x6b9e923a9283ef96
xor rdx, r8
sub rax, rdx
mov rdx, rax
and rdx, rcx
movabs r8, 0x50d353c42ee12f39
movabs r9, 0x50d353c42ee12f3b
xor r8, r9
imul r8, rdx
mov rdx, rax
add rdx, rcx
sub rdx, r8
movabs r8, 0xef396a358e1e0419
movabs r9, 0xef396a358e1e0419
xor r8, r9
cmp rdx, r8
setl dl
movabs r8, 0x558af258935262c9
movabs r9, 0x558af258935262c9
xor r8, r9
cmp rcx, r8
setne cl
and cl, dl
test cl, 1
mov qword [rsp + 0x48], rax
jne 0x140032648
jmp 0x14003211a
call fcn.1400067fe
jmp 0x14003265f
mov rax, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x50]
mov qword [rax], rcx
add rsp, 0x68
ret
jle 0x140032685
sub ebp, ecx
invalid
test al, 0x5b
pop rdi
sbb ecx, ebp
invalid
fidivr dword [rbx - 0x1716bf54]
sti
invalid
stosb byte [rdi], al
xchg ebp, eax
push rdx
jmp 0x14003238a
std
invalid
invalid