Function at 0x140071e20
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x38], rcx
mov eax, dword [0x1401de548]
mov r8d, dword [0x1401de54c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov ecx, 0xd57559ca
xor ecx, 0x2a8aa635
mov r9d, r8d
xor r9d, ecx
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 ecx, 0xa0becbeb
xor ecx, 0x131720b1
xor edx, edx
div ecx
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x17bd13df
mov r8d, 0xffffffff
xor r8d, 0x9e7fe8c5
mov eax, ecx
and eax, 0x9e7fe8c5
and r11d, r8d
mov r9d, edx
and r9d, 0x9e7fe8c5
mov r10d, r8d
and r10d, 0x17bd13df
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x202733b8
xor edx, 0xbe58db7d
or edx, r8d
and ecx, edx
or eax, ecx
mov edx, 0x71c79a62
xor edx, 0xfc02299d
mov ecx, eax
xor ecx, edx
mov edx, 0xe587b064
xor edx, 0x1a784f9b
xor ecx, edx
and ecx, 0x8dc5b3ff
shl ecx, 1
sub ecx, 0x8dc5b3ff
sub eax, ecx
cmp eax, 0x63ab4730
je 0x140072926
mov eax, dword [0x1401de550]
xor eax, 0xcd77fa4d
mov ecx, dword [0x1401de554]
xor ecx, 0xb36a6e47
xor edx, edx
div ecx
mov ecx, eax
mov edx, ecx
xor edx, 0x1103
and edx, 0x1c1211b3
xor ecx, 0x7ff684b4
mov eax, ecx
mov ecx, edx
lea eax, [rax + rcx*2]
imul eax, eax, 0x20b0807d
mov dword [rbp + 0x28], eax
mov eax, 0x10
mov qword [rbp + 8], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 8]
mov rcx, rsp
mov qword [rbp - 8], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 8]
mov rcx, rsp
mov qword [rbp], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 8]
mov rcx, rsp
mov qword [rbp + 0x10], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x18], rax
sub rsp, 0x20
call fcn.14006a8ef
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.14003a165
mov rcx, qword [rbp + 0x20]
add rsp, 0x20
mov dl, al
mov eax, dword [rbp + 0x28]
mov byte [rbp + 0x2e], dl
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x2f], cl
cmp eax, 0x65bbd30f
jbe 0x140071f1b
mov al, byte [rbp + 0x2f]
test al, 1
jne 0x140071fff
jmp 0x140072920
mov ecx, dword [str._:f1]
and ecx, dword [0x1401de55c]
mov eax, ecx
and eax, 0xfb52a64a
mov edx, 0x2c366beb
xor edx, 0xd764cda1
or ecx, edx
add eax, ecx
and eax, 0xdbbe9f3d
mov ecx, 0x4ac3a2db
xor edx, edx
div ecx
mov ecx, 0xd98df547
xor ecx, 0xb164b8b4
cmp eax, ecx
je 0x14007292f
mov cl, byte [rbp + 0x2e]
mov edx, dword [0x1401de560]
mov r9d, dword [0x1401de564]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, edx
and r8d, r10d
mov eax, edx
or eax, r10d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
mov eax, edx
and eax, 0x477fe110
mov r8d, 0x4d59ee3d
xor r8d, 0xa260f2d
xor edx, r8d
or eax, edx
sub eax, 0x34705ce5
mov edx, eax
xor edx, 0xcb4fdc76
xor edx, 0xffffffff
or eax, 0xcb4fdc76
and eax, edx
mov dl, 0xad
xor dl, 0x6d
cmp cl, dl
sete cl
mov byte [rbp - 9], cl
cmp eax, 0x9e550978
jae 0x140072042
mov al, byte [rbp - 9]
test al, 1
jne 0x1400720d2
jmp 0x140072111
xor eax, eax
mov ecx, eax
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140010380
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp - 8]
add rsp, 0x20
mov qword [rdx], 0
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401312c0
add rsp, 0x20
jmp 0x140072920
mov rcx, qword [rbp + 0x38]
sub rsp, 0x20
call fcn.14006d7b0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x20]
mov qword [rbp - 0x18], rcx
cmp byte [rax], 0
jne 0x140072920
mov eax, dword [0x1401de568]
mov ecx, dword [0x1401de56c]
xor ecx, 0x1f821f68
xor edx, edx
div ecx
imul eax, eax, 0xfd209210
mov ecx, 0xffffffff
xor ecx, 0xfcaf95b1
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x5557a1b4
mov r8d, 0xffffffff
xor r8d, 0x5557a1b4
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x5557a1b4
or eax, 0x5557a1b4
imul eax, edx
add eax, ecx
cmp eax, 0xcd93ef97
je 0x140072938
mov rcx, qword [rbp - 0x18]
mov eax, dword [0x1401de570]
xor eax, 0x1a620ee5
mov r9d, dword [0x1401de574]
mov edx, eax
xor edx, 0xffffffff
mov r8d, r9d
and r8d, edx
mov edx, 0x67de41f
xor edx, 0xf9821be0
mov r10d, r9d
xor r10d, edx
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
xor eax, 0xe90550c0
mov edx, 0x962d426f
xor edx, 0x8bd06b4f
or eax, edx
mov r8d, 0xee63875e
xor edx, edx
div r8d
cmp rcx, 0
setl cl
mov byte [rbp - 0x19], cl
cmp eax, 0xf745eeb9
je 0x1400721a3
mov al, byte [rbp - 0x19]
test al, 1
jne 0x14007222f
jmp 0x140072366
mov ecx, dword [0x1401de578]
mov eax, dword [0x1401de57c]
add ecx, 0xf75af592
sub ecx, eax
sub ecx, 0xf75af592
sub ecx, 0x26c35a24
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa8fd2b79
and eax, edx
or ecx, 0xa8fd2b79
xor ecx, 0xffffffff
mov edx, 0x2435d878
xor edx, 0xdbca2787
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
imul eax, eax, 0x97755b1f
cmp eax, 0xd9c9f02f
jae 0x140072941
mov eax, dword [0x1401de580]
xor edx, edx
div dword [0x1401de584]
and eax, eax
xor eax, 0xffffffff
mov ecx, 0xcbb08357
xor ecx, 0x2abb9896
mov edx, 0xbd624276
xor edx, 0x5c6959b7
and ecx, edx
xor ecx, 0xffffffff
mov edx, 0x85ff96b8
xor edx, 0x7a006947
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xc62d9d4a
xor ecx, 0x411d1a56
sub eax, ecx
mov ecx, 0x8534f1d3
xor edx, edx
div ecx
mov dword [rbp - 0x2c], eax
lea rcx, [0x1401ee8e8]
sub rsp, 0x20
call fcn.14006de95
mov rcx, qword [rbp + 0x20]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x2c]
mov qword [rbp - 0x28], rdx
mov cl, byte [rcx]
mov dl, 0x7e
xor dl, 0x7e
cmp cl, dl
sete cl
mov byte [rbp - 0x1a], cl
cmp eax, 0xed923fd1
jae 0x14007228d
mov al, byte [rbp - 0x1a]
test al, 1
jne 0x140072332
jmp 0x140072920
mov rcx, qword [rbp - 0x28]
lea rdx, [0x1401ee835]
lea r8, [0x1401ee89f]
lea r9, [0x1401ee825]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffee93ee95
call fcn.14001355a
add rsp, 0x30
jmp 0x140072920
mov rcx, qword [rbp]
mov rdx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.140022511
mov rax, qword [rbp]
mov rcx, qword [rbp + 0x30]
mov rdx, qword [rbp + 0x10]
add rsp, 0x20
mov r8, qword [rax]
mov rax, qword [rax + 8]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1401312c0
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140072920
mov ecx, dword [0x1401de588]
sub ecx, dword [0x1401de58c]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x5fe42721
mov edx, 0xdfe0b005
xor edx, 0x80049724
mov r8d, 0xd3210e53
xor r8d, 0x2cdef1ac
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0xe14eb05e
xor ecx, 0x59f5043f
or eax, ecx
mov ecx, 0xbea499d1
xor ecx, 0xbea499d1
sub ecx, eax
xor eax, eax
sub eax, 0xc85cd40f
add ecx, eax
xor eax, eax
sub eax, ecx
cmp eax, 0xfbbde4f5
je 0x14007294a
mov rcx, qword [rbp - 0x18]
mov eax, dword [0x1401de590]
mov edx, dword [0x1401de594]
xor edx, 0xa060449c
or eax, edx
or eax, 0xd8f77bc7
or eax, 0x4365977c
add eax, 0xafd93705
mov r8, rcx
add r8, 0xffffffffffffffff
mov rdx, r8
or rdx, rdx
xor rdx, 0xffffffffffffffff
mov r9, rcx
or r9, r9
xor r9, 0xffffffffffffffff
movabs r10, 0xb4e14630f0d78b6
movabs r11, 0xf4b1eb9cf0f28749
xor r10, r11
xor rdx, r10
xor r9, 0xffffffffffffffff
and rdx, r9
xor r8, 0xffffffffffffffff
mov r9, rcx
xor r9, 0xffffffffffffffff
and r8, r9
movabs r9, 0x83ce8adc9afb8163
movabs r10, 0x7c31752365047e9c
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
and rdx, r8
movabs r8, 0x9033f214dd134456
movabs r9, 0x9033f214dd134456
xor r8, r9
cmp rdx, r8
setl dl
cmp rcx, 0
setne cl
and cl, dl
mov byte [rbp - 0x2d], cl
cmp eax, 0x5ef3a542
je 0x140072424
mov al, byte [rbp - 0x2d]
test al, 1
jne 0x1400725a9
jmp 0x1400724fa
mov eax, dword [0x1401de598]
mov edx, dword [0x1401de59c]
xor edx, 0x687641cb
mov ecx, 0x431434d4
xor ecx, 0x431434d4
sub ecx, edx
add eax, ecx
mov edx, 0xffffffff
xor edx, 0xb08c6b43
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xb08c6b43
add eax, edx
sub eax, ecx
imul eax, eax, 0x251cdc0e
mov ecx, 0xb851d966
xor ecx, 0xfb1ac4b4
add eax, ecx
mov ecx, 0xce9a83ad
xor ecx, 0x6f3f2f8f
cmp eax, ecx
jae 0x140072953
mov rcx, qword [rbp + 0x30]
mov eax, dword [0x1401de5a0]
xor eax, 0x52745331
sub eax, dword [0x1401de5a4]
and eax, 0x6c4d50a1
xor eax, 0x64a06a70
mov edx, 0xffffffff
xor edx, 0x62421d77
add eax, edx
add eax, 1
add rcx, 8
mov qword [rbp - 0x38], rcx
cmp eax, 0x5d9457c1
jae 0x140072953
xor eax, eax
mov qword [rbp - 0x40], rax
jmp 0x1400725bb
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x140072920
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x48], rax
cmp rax, rcx
jge 0x14007282d
mov rdx, qword [rbp + 0x18]
mov rcx, qword [rbp + 0x38]
mov qword [rdx], 0
sub rsp, 0x20
call fcn.140071df0
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x23
xor r8b, 0x23
mov cl, 1
cmp dl, r8b
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
jne 0x1400727e1
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp + 0x30]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rbp - 0x60], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140072687
mov rcx, qword [rbp - 0x48]
mov rdx, qword [rbp - 0x60]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
movabs r8, 0x217fd5e7111c9e1d
movabs r9, 0xde802a18eee361e2
xor r8, r9
xor rdx, r8
add rdx, rax
sub rsp, 0x20
call fcn.1400137e9
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov cl, byte [rcx]
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
jmp 0x1400727e1
mov rdx, qword [rbp - 0x48]
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp - 0x38]
mov rcx, qword [rcx]
add rcx, 8
shl rdx, 3
add rcx, rdx
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.1400d4580
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp - 0x48]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x24
xor r8b, 0x24
mov cl, 1
cmp dl, r8b
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
jne 0x1400727e1
mov eax, dword [0x1401de5a8]
mov ecx, dword [0x1401de5ac]
add eax, 0xeca1be1a
sub eax, ecx
sub eax, 0xeca1be1a
mov ecx, 0x62d3f183
xor ecx, 0xf7d45dd8
or eax, ecx
imul eax, eax, 0x997b1491
mov ecx, eax
xor ecx, 0x966915d2
xor ecx, 0xffffffff
or eax, 0x966915d2
and eax, ecx
mov ecx, 0x32161d4b
xor ecx, 0xca449016
cmp eax, ecx
jae 0x14007295c
mov rcx, qword [rbp + 0x18]
mov eax, dword [0x1401de5b0]
xor eax, 0x43b978f8
sub eax, dword [0x1401de5b4]
mov r8d, 0x4426c8a1
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0x79996011
xor r8d, 0x86669fee
xor edx, r8d
and eax, edx
mov edx, 0x8c4cf0be
xor edx, 0x1db09999
mov r8d, 0x10276b96
xor r8d, 0x81db02b1
or edx, r8d
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0x82a39884
xor edx, 0x2dd31ac3
and eax, edx
mov dword [rbp - 0x70], eax
sub rsp, 0x20
call fcn.1400d4786
mov rdx, qword [rbp + 0x20]
mov rcx, qword [rbp - 0x48]
mov eax, dword [rbp - 0x70]
add rsp, 0x20
mov dl, byte [rdx]
mov byte [rbp - 0x69], dl
cmp dl, 0
sete dl
and dl, 1
movzx edx, dl
add rcx, rdx
mov qword [rbp - 0x68], rcx
cmp eax, 0xce5e17a7
jae 0x140072724
mov rax, qword [rbp - 0x68]
mov cl, byte [rbp - 0x69]
mov byte [rbp - 0x51], cl
mov qword [rbp - 0x50], rax
jmp 0x1400727e1
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x18]
mov dl, byte [rbp - 0x51]
mov r8, qword [rbp - 0x50]
mov qword [rbp - 0x80], r8
mov byte [rbp - 0x71], dl
mov byte [rcx], 0
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400d43d3
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14007282d
mov al, byte [rbp - 0x71]
mov rdx, qword [rbp + 0x20]
mov cl, 0x85
xor cl, 0x85
mov byte [rdx], al
cmp al, cl
je 0x140072913
mov eax, dword [0x1401de5b8]
xor eax, 0x3dacd92e
mov ecx, dword [0x1401de5bc]
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov ecx, 0x4abf8566
xor ecx, 0x992213d7
add eax, ecx
mov ecx, eax
xor ecx, 0x5636b203
mov edx, 0x53dbe4c4
xor edx, 0xac241b3b
xor ecx, edx
or eax, 0x5636b203
and eax, ecx
mov ecx, 0xe7df9890
xor ecx, 0xe3643975
xor eax, ecx
cmp eax, 0x651cbdb4
jae 0x140072965
mov ecx, dword [0x1401de5c0]
mov edx, dword [0x1401de5c4]
xor edx, 0xda7ca92a
xor edx, 0xffffffff
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xa28a852d
xor ecx, 0x46b80bba
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x4e2f1aa1
xor edx, 0xc81931ec
mov r8d, 0xa1dd18ae
xor r8d, 0x27eb33e3
or edx, r8d
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x86362b4d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
inc dword [rcx + 0x362b4df2]
xchg byte [rcx], ah
ror dword [rcx], 1
enter 0xfffffffffffff083, 0xffffffffffffffff
mov ecx, 0xea8c3992
xor ecx, 0x64749f0
or eax, ecx
cmp eax, 0x862caf22
je 0x14007288b
jmp 0x140072920
mov rax, qword [rbp - 0x80]
mov qword [rbp - 0x40], rax
jmp 0x1400725bb
lea rsp, [rbp + 0x40]
pop rbp
ret
add eax, 0xe95af4e8
in al, dx
cmc
invalid
cmp eax, 0xe9362ade
or dh, bh
invalid
xchg dword [rdx + 0x13], ecx
invalid
je 0x14007297c
int3
fisubr dword [rsi]
out 0x8c, al
jmp 0x140072424
cmpsb byte [rsi], byte [rdi]
jbe 0x1400728e8
jmp 0x14007255c
fnstcw word [rax]
push rax
push rcx
jmp 0x140072724
ja 0x140072980
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
call fcn.14006a8ef
mov rcx, qword [rsp + 0x28]
dec dword [rax - 0x75]
and al, 0x28
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x140071e20