Function at 0x140044c70
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xb8
mov qword [rsp + 0xa8], rdx
mov qword [rsp + 0xb0], rcx
mov ecx, dword [0x140274238]
and ecx, dword [0x14027423c]
xor ecx, 0x27b0ba28
mov edx, 0xf906d608
xor edx, 0x6f929f7
mov eax, ecx
xor eax, edx
mov edx, 0xca294200
xor edx, 0x35d6bdff
xor ecx, edx
or eax, ecx
mov ecx, 0x926d35a4
and ecx, 0x926d35a4
mov edx, 0xa746cad0
xor edx, 0x58b9352f
xor ecx, edx
mov edx, 0xf693eaed
xor edx, 0x96c1512
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
imul eax, eax, 0xd875c56c
cmp eax, 0xf0c74aef
je 0x140045586
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0xb0]
mov r8d, dword [0x140274240]
mov r9d, dword [0x140274244]
mov r10d, 0x9ab4b13f
xor r10d, 0x9ab4b13e
mov eax, r8d
add eax, r10d
mov r10d, 0xd7603b28
xor r10d, 0x289fc4d7
xor r8d, r10d
or r8d, r9d
add r8d, eax
mov eax, r8d
and eax, 0xff8130aa
xor eax, 0xffffffff
mov r9d, 0x4e818466
xor r9d, 0xb17e7b99
xor r8d, r9d
mov r9d, 0x785b6f1a
xor r9d, 0x87da5fb0
mov r10d, 0xb8a77166
xor r10d, 0x47588e99
xor r9d, r10d
or r8d, r9d
and eax, r8d
xor eax, 0xffffffff
xor r8d, r8d
sub r8d, 0x73091545
sub eax, r8d
and eax, 0x5c027079
mov rcx, qword [rcx]
mov qword [rsp + 0x98], rcx
cmp rcx, rdx
setg cl
mov byte [rsp + 0xa7], cl
cmp eax, 0x72b5547
jb 0x140044cf2
mov al, byte [rsp + 0xa7]
test al, 1
jne 0x140044dc3
jmp 0x140044ea4
mov eax, dword [0x140274248]
mov edx, dword [0x14027424c]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
mov ecx, 0x864bdb
xor ecx, 0x1a6afe62
or eax, ecx
sub eax, 0x3464165a
and eax, eax
mov ecx, 0xade5e10c
xor ecx, 0x521a1ef3
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x7d59d31f
mov edx, 0xffffffff
xor edx, 0x7d59d31f
or ecx, edx
and eax, ecx
mov ecx, 0x132bde01
xor ecx, 0xecd421fe
xor eax, ecx
mov ecx, 0x2c930280
xor ecx, 0x5283202c
cmp eax, ecx
jb 0x14004558f
mov rcx, qword [rsp + 0xb0]
mov eax, dword [0x140274250]
xor eax, dword [0x140274254]
mov r8d, 0x4e786099
xor r8d, 0x7a166935
xor edx, edx
div r8d
mov edx, eax
add edx, 1
mov r8d, 0x8580b1c4
xor r8d, 0x7a7f4e3b
xor eax, r8d
or eax, 0x70dc50a9
add eax, edx
mov r8d, 0x77f50612
xor r8d, 0x10d8fd76
xor edx, edx
div r8d
mov rdx, qword [rsp + 0xa8]
mov qword [rcx], rdx
cmp eax, 0xf00d3524
je 0x140044e35
jmp 0x14004557e
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xa8]
cmp rax, rcx
jge 0x14004557e
mov rax, qword [rsp + 0xb0]
mov rcx, rax
add rcx, 8
mov qword [rsp + 0x88], rcx
mov rax, qword [rax + 8]
mov qword [rsp + 0x90], rax
cmp rax, 0
je 0x140044ff6
mov ecx, dword [0x140274258]
xor ecx, dword [0x14027425c]
mov edx, 0x2a2008a6
xor edx, 0xaeff63c6
mov eax, ecx
and eax, edx
xor ecx, 0x84df6b60
or eax, ecx
mov edx, 0xee821836
xor edx, 0x564df9c8
mov ecx, 0x3f17508e
xor ecx, 0xc0e8af71
xor edx, ecx
mov ecx, eax
and ecx, edx
mov r8d, 0x879717cc
xor r8d, 0x3f58f632
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
xor eax, 0x4ecb6eab
cmp eax, 0x7b18ac2c
jbe 0x140045598
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x90]
mov ecx, dword [0x140274260]
mov eax, dword [str.I_n]
xor eax, 0xb5a2f030
xor eax, 0xffffffff
mov r9d, 0x38073563
xor r9d, 0x38073563
mov r10d, 0x5ab0007c
xor r10d, 0x5ab0007d
sub r9d, r10d
sub eax, r9d
sub ecx, eax
sub ecx, 0xdaa28a51
mov eax, ecx
and eax, 0x1c5835ac
or ecx, 0x1c5835ac
add eax, ecx
sub eax, 0x94966b44
movabs rcx, 0xbfffffffffffffff
and rcx, qword [r8]
cmp rcx, rdx
setl cl
mov byte [rsp + 0x87], cl
cmp eax, 0x93636313
ja 0x140044f4f
mov rax, qword [rsp + 0x90]
mov cl, byte [rsp + 0x87]
test cl, 1
mov qword [rsp + 0x78], rax
jne 0x140044ff6
jmp 0x140045286
mov r8, qword [rsp + 0x98]
mov r9, qword [rsp + 0xa8]
mov rdx, r9
sub rdx, r8
mov qword [rsp + 0x70], rdx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov rax, r9
and rax, rcx
xor r9, 0xffffffffffffffff
mov rcx, rdx
and rcx, r9
or rax, rcx
cmp rax, 0
setl cl
mov rax, rdx
and rax, rax
movabs r9, 0x3680988f628112a9
movabs r10, 0xc97f67709d7eed56
xor r9, r10
xor rax, r9
movabs r9, 0xa454142a098ef0d6
movabs r10, 0x5babebd5f6710f29
xor r9, r10
xor rax, r9
mov r9, r8
xor r9, 0xffffffffffffffff
or rax, r9
and r8, r8
xor r8, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r9, 0x8f6cb3e4a976b3c6
movabs r10, 0x70934c1b56894c39
xor r9, r10
xor r8, r9
or rdx, r8
movabs r8, 0xb1aa6d2b587b5afa
movabs r9, 0x4e5592d4a784a505
xor r8, r9
xor rax, r8
xor rdx, 0xffffffffffffffff
or rax, rdx
cmp rax, 0xffffffffffffffff
setg dl
mov al, cl
xor al, 0xff
mov r9b, 1
xor r9b, 0
mov r8b, dl
xor r8b, r9b
or al, r8b
xor cl, 0xff
mov r8b, 1
xor r8b, 0
xor dl, r8b
or cl, dl
and al, cl
xor ecx, ecx
xor cl, 1
xor al, cl
test al, 1
jne 0x14004527c
mov eax, dword [0x140274268]
mov ecx, dword [0x14027426c]
mov r11d, eax
and r11d, ecx
xor eax, ecx
or r11d, eax
mov eax, 0xe9c07f4b
xor eax, 0xeae19364
sub r11d, eax
sub r11d, 0x160786e3
mov eax, 0xaf1a7514
xor eax, 0xac3b993b
add r11d, eax
mov eax, 0x3d2a4cc4
xor eax, 0xc2d5b33b
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x60b44f06
mov edx, 0xffffffff
xor edx, 0xfb8d53be
mov r9d, 0x45963e34
xor r9d, 0xbe1b6d8a
mov eax, ecx
and eax, r9d
and r11d, edx
mov r9d, r8d
and r9d, 0xfb8d53be
mov r10d, edx
and r10d, 0x60b44f06
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x297d577d
xor r8d, 0xd682a882
xor ecx, r8d
or edx, 0xfb8d53be
and ecx, edx
or eax, ecx
mov ecx, 0x9bd714bc
xor ecx, 0xa4d87faf
imul eax, ecx
cmp eax, 0x58406ced
jb 0x1400455a1
mov r8, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x98]
mov eax, dword [0x140274270]
mov edx, dword [0x140274274]
add eax, 0xca496b8
add eax, edx
sub eax, 0xca496b8
mov r9d, 0x8880553f
xor edx, edx
div r9d
mov rdx, qword [rsp + 0x90]
mov r9d, 0x296ce330
xor r9d, 0x27aa95b2
imul eax, r9d
or eax, 0xfff4dd15
mov dword [rsp + 0x64], eax
movabs r9, 0x64232a7732967ea7
movabs rax, 0x64232a7732967ea5
xor r9, rax
movabs rax, 0x3176a46a7105933f
movabs r10, 0x3176a46a7105933d
xor rax, r10
mov qword [rsp + 0x20], rax
call fcn.1400265f0
mov rcx, qword [rsp + 0x88]
mov rdx, rax
mov eax, dword [rsp + 0x64]
mov qword [rsp + 0x68], rdx
mov qword [rcx], rdx
cmp eax, 0xa9bb3fec
jbe 0x1400451c1
mov rax, qword [rsp + 0x68]
mov qword [rsp + 0x78], rax
jmp 0x140045286
call fcn.14000f24b
jmp 0x14004557e
mov rax, qword [rsp + 0x98]
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0x78]
mov qword [rsp + 0x50], r8
mov qword [rcx], rdx
mov qword [rsp + 0x58], rax
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x48], rax
cmp rax, rcx
jge 0x14004557e
mov eax, dword [0x140274278]
or eax, dword [0x14027427c]
mov ecx, 0xb8ffccc4
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0x30070a5d
xor eax, 0xfe829179
sub ecx, eax
mov edx, 0xe23f7e43
xor edx, 0xe7d8cc8d
mov eax, ecx
and eax, edx
xor ecx, 0x5e7b2ce
or eax, ecx
cmp eax, 0xa97034c4
je 0x1400455aa
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x140274280]
xor eax, 0x97522957
mov edx, dword [str._9_r]
xor edx, 0xffffffff
add eax, edx
add eax, 1
mov r8d, 0x20a4b1fc
xor r8d, 0x5ed45288
mov edx, 0x1bfe5605
xor edx, 0xe401a9fa
xor r8d, edx
mov edx, eax
and edx, r8d
mov r9d, 0xb5826610
xor r9d, 0xcbf28564
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
mov r8d, 0xec0a6248
xor edx, edx
div r8d
mov r8d, 0x5502e38a
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x48]
mov word [rcx + rdx*2 + 8], 0
xor ecx, ecx
mov r8d, ecx
sub r8, rdx
xor ecx, ecx
sub rcx, 1
add r8, rcx
movabs rcx, 0x8b39ef6b7673c828
movabs r9, 0x8b39ef6b7673c828
xor rcx, r9
sub rcx, r8
mov qword [rsp + 0x38], rcx
mov r8, rdx
xor r8, 0xffffffffffffffff
mov r9, rdx
xor r9, 0xffffffffffffffff
and r8, r9
movabs r9, 0x64faa05b8de4c84d
movabs r10, 0x9b055fa4721b37b2
xor r9, r10
movabs r10, 0x670ddd3f2102451e
movabs r11, 0x98f222c0defdbae1
xor r10, r11
or r9, r10
xor r9, 0xffffffffffffffff
or r8, r9
xor r8, 0xffffffffffffffff
or rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or r8, rdx
xor r8, 0xffffffffffffffff
or rcx, rcx
movabs rdx, 0x2de45ff44e524a05
movabs r9, 0xd21ba00bb1adb5fa
xor rdx, r9
xor rcx, rdx
mov rdx, r8
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0xc293a89543323b69
movabs r8, 0xc293a89543323b69
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x47], cl
cmp eax, 0xb60a05c1
je 0x1400455aa
mov rax, qword [rsp + 0x38]
mov cl, byte [rsp + 0x47]
test cl, 1
mov qword [rsp + 0x58], rax
jne 0x140045492
jmp 0x1400452b0
mov eax, dword [0x140274288]
mov ecx, dword [0x14027428c]
mov edx, 0xa1f74e20
xor edx, 0xa4adce41
xor ecx, edx
xor eax, ecx
mov ecx, eax
and ecx, 0xd06ab1a9
shl ecx, 1
xor eax, 0xd06ab1a9
add eax, ecx
sub eax, 0x241450c7
sub eax, 0xff5f4266
cmp eax, 0xed53df6e
je 0x1400455b3
mov eax, dword [0x140274290]
xor edx, edx
div dword [0x140274294]
mov ecx, 0x3845312d
xor ecx, 0x29aced26
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x94cff6d8
xor r8d, 0x6b300927
mov edx, ecx
xor edx, r8d
and eax, edx
mov edx, 0x3aa5a349
or edx, 0x3aa5a349
xor edx, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0xf1aa6daa
xor r8d, 0xe559255
xor edx, r8d
and eax, edx
mov edx, 0x94057ffb
xor edx, 0xaea0dcb2
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x86ce4815
mov edx, 0xffffffff
xor edx, 0x86ce4815
and eax, edx
sub eax, ecx
mov dword [rsp + 0x34], eax
call fcn.14000f24b
mov eax, dword [rsp + 0x34]
cmp eax, 0xc081f0a8
jae 0x1400454d4
jmp 0x14004557e
add rsp, 0xb8
ret
push rbp
invalid
mov ebp, 0xe9927e9b
popfq
clc
invalid
cmp cl, 0x31
invalid
wait
sub byte [rax - 0x3e817], r10b
call [rcx]
push rsp
invalid
sbb dword [rsp + rdx*8 + 0x2c], edx
jmp 0x140045310
mov ah, 0xfe
lodsd eax, dword [rsi]
mov ecx, gs
sbb bh, bh
invalid