Function at 0x140117a20
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0xa8
mov qword [rsp + 0x90], rdx
mov qword [rsp + 0xa0], rcx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov rdx, qword [rsp + 0x90]
mov rcx, qword [rsp + 0xa0]
add rax, 0x60
mov qword [rsp + 0x98], rax
mov rdx, qword [rdx]
call fcn.1400342f0
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
movabs rcx, 0x9890016e466455bc
movabs rdx, 0x9890016e466455bc
xor rcx, rdx
cmp rax, rcx
jle 0x140118065
mov rax, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x90]
add rcx, 8
mov qword [rsp + 0x78], rcx
add rax, 8
mov qword [rsp + 0x80], rax
xor eax, eax
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x70], rax
mov r8d, dword [0x1402af308]
mov eax, 0x2d8f43de
xor eax, 0x165050a9
xor r8d, eax
add r8d, dword [0x1402af30c]
mov eax, 0xc9b277d5
xor eax, 0xe1d4898b
sub r8d, eax
mov ecx, 0x42b6a5b5
xor ecx, 0xbd495a4a
mov eax, r8d
xor eax, ecx
and eax, 0x27b55dbf
mov edx, 0xe535ca2e
xor edx, 0xc2809791
mov ecx, 0x42587323
xor ecx, 0xbda78cdc
xor edx, ecx
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x6ec014e8
mov r9d, 0xbc2be9b1
xor r9d, 0x9b9eb40e
and ecx, r9d
and edx, 0x6ec014e8
or eax, r8d
or ecx, edx
xor eax, ecx
xor eax, 0xc175b71c
mov ecx, 0x6a8ee732
xor ecx, 0x2917a7b0
cmp eax, ecx
ja 0x14011806f
mov rcx, qword [rsp + 0x78]
mov eax, dword [0x1402af310]
xor eax, 0x4c633543
mov edx, dword [0x1402af314]
xor edx, 0x12351bc5
imul eax, edx
mov r8d, 0x81fcde13
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x70]
add eax, 0x2f7905a7
mov r8d, 0x676ff421
xor r8d, 0x7b3efecb
imul eax, r8d
mov rcx, qword [rcx]
mov rcx, qword [rcx + rdx*8 + 8]
mov qword [rsp + 0x60], rcx
cmp rcx, 0
sete cl
mov byte [rsp + 0x6f], cl
cmp eax, 0x475d575f
jbe 0x140117b6a
mov al, byte [rsp + 0x6f]
test al, 1
jne 0x140117d92
jmp 0x140117be3
mov eax, dword [0x1402af318]
xor eax, 0x7670ccae
xor edx, edx
div dword [0x1402af31c]
xor eax, 0xb5bbec27
xor eax, 0x9bb5c65f
mov ecx, eax
and ecx, 0x72935d76
shl ecx, 1
xor eax, 0x72935d76
add eax, ecx
mov ecx, 0x933fd5a4
xor ecx, 0x7eba4cac
cmp eax, ecx
jae 0x140118078
mov rdx, qword [rsp + 0x60]
mov ecx, dword [0x1402af320]
mov r8d, dword [0x1402af324]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, r8d
xor eax, 0xffffffff
and r8d, r8d
mov r9d, 0x33fdfdd2
xor r9d, 0xcc02022d
xor r8d, r9d
mov r9d, 0xf728716f
xor r9d, 0x8d78e90
xor ecx, r9d
xor r8d, 0xffffffff
or ecx, r8d
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x6dbffa1c
xor ecx, 0xa475f3bc
or eax, ecx
mov r9d, 0x14dc4c8a
xor r9d, 0x56b45ccd
mov ecx, 0xfa1357d6
xor ecx, 0x5eca829
xor r9d, ecx
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, r8d
mov r9d, 0xbc82e4f9
xor r9d, 0xfeeaf4be
mov r8d, eax
and r8d, r9d
or eax, 0x42681047
imul eax, r8d
add eax, ecx
mov ecx, 0x31b830f5
xor ecx, 0x441308d4
and ecx, eax
xor ecx, 0xffffffff
mov r8d, 0xc259ac67
xor r8d, 0xb7f29446
add eax, r8d
add eax, 1
add eax, ecx
mov ecx, 0x6dfbb2ce
xor ecx, 0x4082d5ba
movabs r8, 0xf4446b12dd9c3d00
sub rdx, r8
add rdx, 0xfffffffffffffff0
movabs r8, 0xf4446b12dd9c3d00
add rdx, r8
mov qword [rsp + 0x48], rdx
mov r9, qword [rdx]
movabs r8, 0x8661a4980b19d849
movabs rdx, 0x8661a4980b19d859
xor r8, rdx
mov rdx, r9
add rdx, r8
mov qword [rsp + 0x50], rdx
xor r9, 0xffffffffffffffff
mov r8, rdx
xor r8, r9
xor r8, 0xffffffffffffffff
or rdx, r9
and rdx, r8
cmp rdx, 0
setl dl
mov byte [rsp + 0x5f], dl
cmp eax, ecx
jbe 0x140118078
mov al, byte [rsp + 0x5f]
test al, 1
jne 0x140117d7b
jmp 0x140117d85
call fcn.14000ee80
jmp 0x140117d92
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x50]
mov qword [rax], rcx
mov rcx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x80]
mov rax, qword [rax]
mov rax, qword [rax + rcx*8 + 8]
mov qword [rsp + 0x40], rax
cmp rax, 0
je 0x140118026
mov rcx, qword [rsp + 0x40]
movabs rdx, 0x92e3d02545a285ef
movabs rax, 0x6d1c2fdaba5d7a1f
xor rdx, rax
mov rax, rcx
and rax, rdx
or rcx, 0xfffffffffffffff0
add rax, rcx
mov qword [rsp + 0x30], rax
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
movabs rcx, 0x13cb665a3c9d09de
movabs rdx, 0x13cb665a3c9d09ce
xor rcx, rdx
cmp rax, rcx
jb 0x140117e8c
mov rdx, qword [rsp + 0x38]
movabs rcx, 0x1234557d09e848dd
movabs rax, 0x99e17d5d53f1c431
xor rcx, rax
mov rax, rdx
sub rax, rcx
add rax, 0xfffffffffffffff0
movabs rcx, 0x8bd528205a198cec
add rax, rcx
mov qword [rsp + 0x28], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl dl
cmp rax, 0xffffffffffffffff
setg al
mov cl, al
xor cl, dl
xor cl, 0xff
or al, dl
and al, cl
test al, 1
jne 0x140117e70
jmp 0x140117e7a
call fcn.14000ee80
jmp 0x140118026
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x28]
mov qword [rax], rcx
jmp 0x140118026
mov rcx, qword [rsp + 0x40]
call fcn.140117360
mov rax, qword [rsp + 0x98]
cmp byte [rax], 0
jne 0x140118065
mov eax, dword [0x1402af328]
or eax, dword [0x1402af32c]
xor ecx, ecx
sub ecx, 0xb199ef46
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xb77e8c2d
mov r8d, 0xffffffff
xor r8d, 0xb77e8c2d
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xb77e8c2d
or eax, 0xb77e8c2d
imul eax, edx
add eax, ecx
imul eax, eax, 0x737089b9
cmp eax, 0x48be9da4
ja 0x140118081
mov rcx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x80]
mov edi, dword [0x1402af330]
mov edx, dword [0x1402af334]
mov r8d, 0x40320026
xor r8d, 0xdfa36d80
xor edx, r8d
sub edi, edx
mov edx, 0x14825ef0
xor edx, 0xeb10bac6
add edi, edx
mov r8d, edi
xor r8d, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x92ede821
mov r10d, 0xffffffff
xor r10d, 0x2825200a
mov edx, r8d
and edx, 0x2825200a
and edi, r10d
mov r11d, r9d
and r11d, 0x2825200a
mov esi, 0xead6109b
xor esi, 0x783bf8ba
and esi, r10d
or edx, edi
or r11d, esi
xor edx, r11d
or r8d, r9d
xor r8d, 0xffffffff
mov r9d, 0xb7bec99c
xor r9d, 0x9f9be996
or r9d, r10d
and r8d, r9d
or edx, r8d
mov r9d, 0x4e2dc15f
xor r9d, 0xb1d23ea0
mov r8d, edx
xor r8d, r9d
mov r9d, 0xc581af88
xor r9d, 0x50299233
and r9d, r8d
mov r10d, 0xffffffff
xor r10d, 0x95a83dbb
mov r8d, edx
and r8d, r10d
imul r8d, r9d
mov r10d, 0xd5510d21
xor r10d, 0x40f9309a
mov r9d, edx
and r9d, r10d
or edx, 0x95a83dbb
imul edx, r9d
add edx, r8d
mov dword [rsp + 0x24], edx
mov rax, qword [rax]
mov rcx, qword [rax + rcx*8 + 8]
mov edx, 8
call fcn.14001ab40
mov eax, dword [rsp + 0x24]
cmp eax, 0x4aedfece
je 0x140118081
jmp 0x140118026
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x80]
mov r8, qword [rsp + 0x78]
mov r8, qword [r8]
mov r8, qword [r8 + rax*8 + 8]
mov rdx, qword [rdx]
mov qword [rdx + rax*8 + 8], r8
add rax, 1
cmp rax, qword [rcx]
mov qword [rsp + 0x88], rax
jl 0x140117ac5
add rsp, 0xa8
pop rdi
pop rsi
ret
fdiv qword [rax]
cmp dword [rdx], eax
jmp 0x140117b6a
xor dword [rbx + 0x10], edi
sub ecx, 0xfffffba4
cli
invalid