Function at 0x140044dd0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
mov byte [rbp + 0x47], dl
mov qword [rbp + 0x48], rcx
mov eax, dword [0x14024ce80]
xor eax, 0x6323b7ac
xor eax, dword [0x14024ce84]
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x4e560548
or ecx, 0x4e560548
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x3fe65d8
xor edx, 0xfc019a27
xor ecx, edx
and eax, ecx
mov ecx, 0x6d091b6e
xor ecx, 0xffed90ac
and ecx, eax
mov edx, 0x4752a9d0
xor edx, 0xb8ad562f
xor ecx, edx
add eax, 0x92e48bc2
add eax, 1
add eax, ecx
sub eax, 0xd7bbf588
sub eax, 0xed5b8d7d
mov ecx, 0xb941fffc
xor ecx, 0x6efa0a74
add eax, ecx
mov ecx, 0x8cad683c
xor ecx, 0x880d4093
cmp eax, ecx
je 0x14004566d
mov ecx, dword [0x14024ce88]
mov eax, dword [0x14024ce8c]
add ecx, eax
or ecx, 0x192cfeee
mov eax, ecx
imul rax, rax, 0x294cb609
shr rax, 0x20
sub ecx, eax
shr ecx, 1
add ecx, eax
shr ecx, 0x1e
mov edx, ecx
add edx, edx
mov eax, ecx
neg edx
mov ecx, edx
lea eax, [rax + rcx + 0x4557e697]
mov dword [rbp + 0x34], eax
mov eax, 0x10
mov qword [rbp], rax
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp]
mov rcx, rsp
mov qword [rbp + 0x18], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp]
mov rcx, rsp
mov qword [rbp + 8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x10], rax
sub rsp, 0x20
call fcn.14003cf0c
mov rcx, qword [rbp + 0x18]
mov dl, byte [rbp + 0x47]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0x48]
mov qword [rbp + 0x28], r8
mov qword [rbp + 0x20], r8
movups xmm0, xmmword [rax]
movups xmmword [rcx], xmm0
sub rsp, 0x20
xor eax, eax
mov r8d, eax
mov r9, 0xffffffffffffffff
call fcn.14003db70
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x34]
mov r8, rdx
mov qword [rbp + 0x38], r8
mov cl, byte [rcx]
test cl, cl
sete cl
test rdx, rdx
setns dl
and cl, dl
mov byte [rbp + 0x46], cl
cmp eax, 0x2e8e7a16
je 0x14004566d
mov al, byte [rbp + 0x46]
test al, 1
jne 0x140044f67
jmp 0x140045667
mov r8, qword [rbp + 0x38]
mov rcx, qword [rbp + 8]
mov rax, qword [rbp + 0x48]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
mov edx, 0x65
mov r9, 0xffffffffffffffff
sub rsp, 0x20
call fcn.14003db70
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x20]
mov qword [rbp - 8], rcx
cmp byte [rax], 0
jne 0x140045667
mov rax, qword [rbp - 8]
movabs rcx, 0xf7265bd2c7e16d0
movabs rdx, 0xf08d9a42d381e92f
xor rcx, rdx
cmp rax, rcx
jle 0x14004511d
mov ecx, dword [0x14024ce90]
sub ecx, dword [0x14024ce94]
mov eax, ecx
and eax, 0x39c7f5cc
mov edx, 0x4805bfc0
xor edx, 0x71c24a0c
xor ecx, edx
or eax, ecx
mov ecx, 0x42e1a7e9
xor edx, edx
div ecx
mov ecx, 0x10f21a42
xor edx, edx
div ecx
cmp eax, 0x4d34797
jae 0x140045676
mov eax, dword [0x14024ce98]
add eax, dword [0x14024ce9c]
mov ecx, 0x28c625a3
xor edx, edx
div ecx
mov ecx, 0xf13813a2
xor ecx, 0xc3b5180
xor edx, edx
div ecx
mov rdx, qword [rbp - 8]
mov r8d, 0x3d01f970
xor r8d, 0xb7f31fb5
mov ecx, eax
xor ecx, r8d
xor ecx, 0xffffffff
mov r8d, 0x1ef931e3
xor r8d, 0x940bd726
and r8d, ecx
mov ecx, 0xed156f57
xor ecx, 0xed156f55
imul ecx, r8d
sub ecx, 0x8af2e6c5
sub eax, ecx
mov ecx, 0x82eaabc8
xor ecx, 0x62b32364
movabs r8, 0xae7660d7c2153e77
movabs r9, 0x51899f283deac188
xor r8, r9
mov r9, rdx
and r9, r8
shl r9, 1
movabs r10, 0x2c70faa492637c6f
movabs r8, 0xd38f055b6d9c8390
xor r10, r8
mov r8, rdx
xor r8, r10
add r8, r9
mov qword [rbp - 0x18], r8
mov r9, r8
and r9, rdx
shl r9, 1
add r8, rdx
sub r8, r9
cmp r8, 0
setl r8b
cmp rdx, 0
setne dl
and dl, r8b
mov byte [rbp - 9], dl
cmp eax, ecx
ja 0x140045676
mov rax, qword [rbp - 0x18]
mov cl, byte [rbp - 9]
test cl, 1
mov qword [rbp - 0x20], rax
jne 0x14004510b
jmp 0x14004512c
sub rsp, 0x20
call fcn.140008c92
add rsp, 0x20
jmp 0x140045667
mov rax, qword [rbp + 0x48]
mov rax, qword [rax]
add rax, 0xffffffffffffffff
mov qword [rbp - 0x20], rax
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x40], rax
add rcx, 8
mov qword [rbp - 0x38], rcx
mov rcx, rax
sub rcx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
cmovl rcx, rax
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x28]
mov qword [rbp - 0x50], rcx
cmp rcx, 0xffffffffffffffff
mov qword [rbp - 0x48], rax
jle 0x14004552b
mov eax, dword [0x14024cea0]
and eax, dword [0x14024cea4]
mov edx, 0x2ada70b2
xor edx, 0x6ca61bc5
mov ecx, eax
xor ecx, edx
mov edx, 0xae54d0b0
xor edx, 0x51ab2f4f
xor ecx, edx
mov edx, 0x1cb69c32
xor edx, 0x5acaf745
or eax, edx
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x814806b9
add eax, ecx
add eax, 1
mov ecx, 0x49a356f5
xor ecx, 0x4c41cbfe
and ecx, eax
mov edx, 0xc893ed25
xor edx, 0x376c12da
xor ecx, edx
add eax, 0x5e29d0b
add eax, 1
add eax, ecx
mov ecx, 0x42d64184
xor ecx, 0x8457c09e
cmp eax, ecx
ja 0x14004567f
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp + 0x48]
mov eax, dword [0x14024cea8]
mov r8d, dword [0x14024ceac]
mov r9d, 0x67cbfecb
xor r9d, 0x7ecdeb17
xor r8d, r9d
xor eax, r8d
mov r8d, 0x66ac1455
xor r8d, 0x432d126f
add eax, r8d
add eax, 0x7fc8b330
mov r8d, eax
and r8d, 0xc4c097d1
shl r8d, 1
add eax, 0xc4c097d1
sub eax, r8d
mov rdx, qword [rdx]
mov qword [rbp - 0x60], rdx
cmp rcx, rdx
setl cl
mov byte [rbp - 0x51], cl
cmp eax, 0x7d5973e1
jb 0x1400451f2
mov al, byte [rbp - 0x51]
test al, 1
jne 0x14004528e
jmp 0x140045270
mov rcx, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x60]
add rdx, 0xffffffffffffffff
sub rsp, 0x20
call fcn.14001284c
add rsp, 0x20
jmp 0x140045667
mov eax, dword [0x14024ceb0]
mov r8d, dword [0x14024ceb4]
xor r8d, 0x3bf9bc02
mov r9d, r8d
xor r9d, 0xffffffff
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 ecx, 0x7d33dfca
xor ecx, 0xe2dcf4ae
xor eax, ecx
mov edx, eax
and edx, 0x3b67a6d6
mov ecx, 0xa0166f1a
xor ecx, 0xa0166f18
imul ecx, edx
mov edx, 0x4ca3ee65
xor edx, 0x77c448b3
add eax, edx
sub eax, ecx
sub eax, 0xdef3c4bf
mov ecx, 0xdb576914
xor ecx, 0xcd71b686
cmp eax, ecx
jae 0x140045688
mov rdx, qword [rbp - 0x50]
mov rcx, qword [rbp - 0x38]
mov eax, dword [0x14024ceb8]
mov r9d, dword [0x14024cebc]
mov r8d, 0xc6e88d0a
xor r8d, 0x391772f5
xor r9d, r8d
mov r8d, eax
xor r8d, r9d
and r8d, eax
mov r10d, 0xffffffff
xor r10d, 0x79339dd0
mov r9d, r8d
and r9d, r10d
mov eax, r8d
or eax, r10d
xor eax, 0xffffffff
imul eax, r9d
mov r9d, r8d
and r9d, 0x79339dd0
mov r10d, 0x7898d80e
xor r10d, 0x1ab45de
or r8d, r10d
imul r8d, r9d
add r8d, eax
or r8d, 0x893f8e00
mov r9d, 0x7ef205c1
xor r9d, 0x4a6ac2cd
mov eax, 0x7f6f2726
xor eax, 0x8090d8d9
xor r9d, eax
mov eax, r8d
xor eax, r9d
and eax, r8d
mov rcx, qword [rcx]
cmp byte [rcx + rdx + 8], 0x30
sete cl
mov byte [rbp - 0x61], cl
cmp eax, 0x1e5fe5c7
je 0x140045688
mov rax, qword [rbp - 0x50]
mov cl, byte [rbp - 0x61]
test cl, 1
mov qword [rbp - 0x48], rax
jne 0x1400453db
jmp 0x14004552b
mov rcx, qword [rbp - 0x50]
movabs rdx, 0x159fe69539198642
movabs rax, 0xb3e32a17f0bd7c29
xor rdx, rax
mov rax, rcx
add rax, rdx
add rax, 0xffffffffffffffff
movabs rdx, 0x6757fb9c5a3b087a
movabs r8, 0xc12b371e939ff211
xor rdx, r8
sub rax, rdx
movabs rdx, 0x4a15a4e4c4e5dc98
movabs r8, 0xb5ea5b1b3b1a2367
xor rdx, r8
mov r8, rax
xor r8, rdx
mov rdx, rcx
and rdx, r8
movabs r8, 0x56b0ebbac6d8aee4
movabs r9, 0xa94f14453927511b
xor r8, r9
mov r9, rcx
xor r9, r8
mov r8, rax
and r8, r9
or rdx, r8
cmp rdx, 0
setl r8b
cmp rcx, 0
setg dl
xor r8b, 0xff
mov cl, dl
xor cl, r8b
and cl, dl
test cl, 1
mov qword [rbp - 0x28], rax
jne 0x14004548f
jmp 0x14004515a
mov eax, dword [0x14024cec0]
mov edx, dword [0x14024cec4]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
sub eax, 0x62976c43
add eax, 0xf7e753c1
add eax, 0x62976c43
mov edx, 0xffffffff
xor edx, 0xea4ff74d
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xea4ff74d
add eax, edx
sub eax, ecx
xor eax, 0xce8f963b
cmp eax, 0x1260ca9a
jbe 0x140045691
mov eax, dword [0x14024cec8]
xor edx, edx
div dword [str.G_h]
xor eax, 0x2d33c93f
or eax, 0x45860934
or eax, 0xc02a904d
mov dword [rbp - 0x68], eax
sub rsp, 0x20
call fcn.140008c92
mov eax, dword [rbp - 0x68]
add rsp, 0x20
cmp eax, 0x35c69abb
jb 0x140045691
jmp 0x140045667
mov rcx, qword [rbp + 0x38]
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x78], rax
cmp rcx, rax
mov qword [rbp - 0x70], rax
jge 0x14004562e
mov r9, qword [rbp - 0x78]
mov rax, r9
add rax, 1
movabs rcx, 0xbb403b2efa054425
movabs rdx, 0x44bfc4d105fabbda
xor rcx, rdx
mov r8, r9
xor r8, rcx
movabs rcx, 0x14e75189bef6889b
and r8, rcx
movabs rdx, 0x3ea00524e7fce828
movabs rcx, 0x2a4754ad590a60b3
xor rdx, rcx
movabs rcx, 0xdeb71c28504316e0
movabs r10, 0x2148e3d7afbce91f
xor rcx, r10
xor rdx, rcx
and r9, rdx
mov rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs r10, 0x14e75189bef6889b
and rcx, r10
and rdx, 0xffffffffffffffff
or r8, r9
or rcx, rdx
xor r8, rcx
mov rcx, rax
xor rcx, 0xffffffffffffffff
mov rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
mov rdx, rax
and rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
movabs rdx, 0x7b79eca6d07f675c
movabs r8, 0x7b79eca6d07f675c
xor rdx, r8
cmp rcx, rdx
mov qword [rbp - 0x70], rax
jge 0x14004562e
sub rsp, 0x20
call fcn.140008c92
add rsp, 0x20
jmp 0x140045667
mov rcx, qword [rbp - 0x40]
mov rax, qword [rbp - 0x70]
mov qword [rbp - 0x80], rax
cmp rax, rcx
jg 0x140045667
mov rdx, qword [rbp + 0x10]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rbp - 0x40]
mov r8, qword [rbp - 0x80]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140043be0
add rsp, 0x20
lea rsp, [rbp + 0x50]
pop rbp
ret
pop rbx
std
insd dword [rdi], dx
jmp 0x140044e6b
test dword [rax - 0x64], ebp
jmp 0x140045011
adc ch, bh
popfq
int1
jmp 0x1400451f2
out dx, al
cmp eax, 0xfc7fe9d1
invalid
xchg ebx, eax
cmp ebp, dword [rdi - 0x6a]
jmp 0x1400454eb