Function at 0x14024d800
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x110
lea rbp, [rsp + 0x80]
mov eax, 0x10
call fcn.14024f5c0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x18], rax
mov rax, qword [0x140269990]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.140007b33
add rsp, 0x20
mov qword [rbp + 0x28], rax
add rax, 0x50
mov qword [rbp + 0x20], rax
sub rsp, 0x20
call fcn.140246640
mov rax, qword [rbp + 0x28]
add rsp, 0x20
cmp byte [rax + 0x50], 0
jne 0x14024e4dd
mov rax, qword [0x1402698a0]
mov rax, qword [rax + 8]
mov qword [rbp + 0x10], rax
cmp rax, 0
je 0x14024d8f5
mov rax, qword [rbp + 0x10]
mov rax, qword [rax]
movabs rcx, 0x1d90aaf9fb6b036c
movabs rdx, 0xe26f55060494fc93
xor rcx, rdx
xor rax, rcx
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x681fdd72af86490f
xor rcx, r8
or rax, rdx
movabs rdx, 0x681fdd72af86490f
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x14024d8f5
mov rcx, qword [rbp + 0x10]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x1402698a8]
mov rax, qword [rax + 8]
mov qword [rbp + 8], rax
cmp rax, 0
je 0x14024d950
mov rcx, qword [rbp + 8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x42d56ce60a80e6b5
movabs rdx, 0x42d56ce60a80e6b5
xor rcx, rdx
cmp rax, rcx
jne 0x14024d950
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x1402698f8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.140051875
mov rax, qword [rbp + 0x20]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xf8
xor cl, 0xf8
cmp al, cl
jne 0x14024e4dd
mov rax, qword [0x1402698f0]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400dca60
mov rax, qword [rbp + 0x20]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x96
xor cl, 0x96
cmp al, cl
jne 0x14024e4dd
mov rcx, qword [0x140269998]
sub rsp, 0x20
call fcn.1401a62d0
add rsp, 0x20
mov rcx, qword [0x1402699a0]
sub rsp, 0x20
call fcn.140003130
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14024e4dd
mov rcx, qword [0x140269978]
sub rsp, 0x20
call fcn.140003296
mov rax, qword [rbp + 0x20]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x6d
xor cl, 0x6d
cmp al, cl
jne 0x14024e4dd
mov rax, qword [0x140269988]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1401a6610
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14024e4dd
mov rax, qword [0x140269900]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.140104a19
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14024e4dd
mov rax, qword [0x1402699f0]
mov rax, qword [rax + 8]
mov qword [rbp], rax
cmp rax, 0
je 0x14024dab4
mov rax, qword [rbp]
mov rax, qword [rax]
movabs rdx, 0xbfa6a13d216859f5
movabs rcx, 0xbfa6a13d216859f4
xor rdx, rcx
mov rcx, rax
add rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x14024dab4
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x140269980]
mov rax, qword [rax + 8]
mov qword [rbp - 8], rax
cmp rax, 0
je 0x14024dc40
mov rcx, qword [rbp - 8]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14024dc40
mov eax, dword [0x14025fc58]
xor eax, 0x2d421da5
xor edx, edx
div dword [0x14025fc5c]
mov edx, eax
xor edx, 0xffffffff
and edx, 0xf8a6e691
mov r8d, 0x810c5e7d
xor r8d, 0x79aab8ec
mov ecx, 0x91f1ed5a
xor ecx, 0x6e0e12a5
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x93d1209e
xor r8d, 0x6b77c60f
mov edx, eax
and edx, r8d
or eax, 0xf8a6e691
imul eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xd42da550
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x561b6cb0
xor ecx, 0xa9e4934f
mov edx, eax
xor edx, ecx
and edx, 0x683d9362
mov r8d, 0xffffffff
xor r8d, 0x683d9362
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x176599db
xor r8d, 0x7f580ab9
mov edx, eax
and edx, r8d
or eax, 0x683d9362
imul eax, edx
add eax, ecx
cmp eax, 0x5332458
jb 0x14024e4f0
mov rcx, qword [rbp - 8]
mov eax, dword [0x14025fc60]
mov edx, dword [0x14025fc64]
xor edx, 0xffffffff
mov r8d, 0xe659ee5e
xor r8d, 0xe659ee5e
mov r9d, 0x697d54eb
xor r9d, 0x697d54ea
sub r8d, r9d
sub edx, r8d
sub eax, edx
mov r8d, 0x93cbaccc
xor r8d, 0xb567c56
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
and edx, 0x1e9b72b5
mov r8d, 0xffffffff
xor r8d, 0x1e9b72b5
and eax, r8d
sub eax, edx
mov edx, eax
xor edx, 0xf7bb7d16
xor edx, 0xffffffff
or eax, 0xf7bb7d16
and eax, edx
mov dword [rbp - 0xc], eax
sub rsp, 0x20
call fcn.14000e9f6
mov eax, dword [rbp - 0xc]
add rsp, 0x20
cmp eax, 0x977e52ae
je 0x14024e4f0
jmp 0x14024dc40
mov rcx, qword [str.____]
sub rsp, 0x20
call fcn.140144c36
add rsp, 0x20
mov rcx, qword [0x140269a08]
sub rsp, 0x20
call fcn.140144c37
add rsp, 0x20
mov rax, qword [0x140269920]
mov rcx, qword [rax]
mov qword [rbp + 0x80], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x88], rax
lea rcx, [rbp + 0x80]
sub rsp, 0x20
call fcn.140037e10
add rsp, 0x20
mov rax, qword [0x140269918]
mov rcx, qword [rax]
mov qword [rbp + 0x70], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x78], rax
lea rcx, [rbp + 0x70]
sub rsp, 0x20
call fcn.140037e10
add rsp, 0x20
mov rax, qword [0x140269908]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14011e838
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14024e4dd
mov rax, qword [0x140269938]
mov rax, qword [rax + 8]
mov qword [rbp - 0x18], rax
cmp rax, 0
je 0x14024dd3b
mov rax, qword [rbp - 0x18]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x14024dd3b
mov rcx, qword [rbp - 0x18]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x140269940]
mov rax, qword [rax + 8]
mov qword [rbp - 0x20], rax
cmp rax, 0
je 0x14024de7f
mov eax, dword [0x14025fc68]
mov ecx, 0x229a2c8d
xor ecx, 0x95c37949
xor eax, ecx
xor edx, edx
div dword [0x14025fc6c]
mov ecx, eax
and ecx, 0x716d0e5d
xor ecx, 0xffffffff
add eax, 0x716d0e5d
add eax, 1
add eax, ecx
mov ecx, 0xa911cfd4
xor edx, edx
div ecx
mov ecx, 0x3d26d4ed
xor ecx, 0x5fd17e1b
sub eax, ecx
cmp eax, 0xb7b5e903
ja 0x14024e4f9
mov eax, dword [0x14025fc70]
xor eax, 0x4197176e
mov r8d, dword [0x14025fc74]
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, 0xabd73bfd
xor ecx, 0xc091fada
sub eax, ecx
sub eax, 0xff158a52
add eax, 0xabd995dc
add eax, 0xff158a52
mov ecx, 0xa6722bcf
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x20]
mov ecx, 0x6b732a14
xor ecx, 0x95d2be35
mov r8, qword [rdx]
movabs r9, 0x823890fa7c3f0083
movabs rdx, 0xc23890fa7c3f0083
xor r9, rdx
movabs rdx, 0x4fa41b0fa0068194
movabs r10, 0xb05be4f05ff97e6b
xor rdx, r10
xor r9, rdx
mov rdx, r8
xor rdx, r9
and rdx, r8
cmp rdx, 0
sete dl
mov byte [rbp - 0x21], dl
cmp eax, ecx
jae 0x14024e4f9
mov al, byte [rbp - 0x21]
test al, 1
jne 0x14024de6e
jmp 0x14024de7f
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x1402699e0]
mov rax, qword [rax + 8]
mov qword [rbp - 0x30], rax
cmp rax, 0
je 0x14024df1f
mov rax, qword [rbp - 0x30]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
movabs rdx, 0xaba3e649243c7464
movabs r8, 0x545c19b6dbc38b9b
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4a1e9989ce640b02
movabs r8, 0xa1e9989ce640b02
xor rdx, r8
and rcx, rdx
movabs rdx, 0xd70fa0789d5f16f6
movabs r8, 0x28f05f8762a0e909
xor rdx, r8
xor rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x14024df1f
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x1402699d8]
mov rax, qword [rax + 8]
mov qword [rbp - 0x38], rax
cmp rax, 0
je 0x14024df90
mov rax, qword [rbp - 0x38]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
movabs rdx, 0x4000000000000000
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0
jne 0x14024df90
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x140269960]
mov rax, qword [rax + 8]
mov qword [rbp - 0x40], rax
cmp rax, 0
je 0x14024e09d
mov eax, dword [0x14025fc78]
xor edx, edx
div dword [0x14025fc7c]
mov ecx, 0xb44e8686
xor ecx, 0xcb5ebe06
add eax, ecx
add eax, 0x7b26107e
mov ecx, 0xdf76f9d
xor ecx, 0x2f3922d6
xor eax, ecx
cmp eax, 0xcaa2abc3
jbe 0x14024e502
mov rcx, qword [rbp - 0x40]
mov eax, dword [0x14025fc80]
xor eax, dword [0x14025fc84]
mov edx, 0x751002cc
xor edx, 0xe11aee36
add eax, edx
add eax, 0xfcb3e19e
sub eax, 0x940aecfa
mov edx, 0xd7275813
xor edx, 0xc9b232d4
sub eax, edx
mov edx, 0xfb2f92f4
xor edx, 0xdb247f25
add eax, edx
mov edx, 0x14abd7
xor edx, 0x1e81c110
add eax, edx
sub eax, 0xdf95d761
mov rcx, qword [rcx]
movabs rdx, 0x7ed4111c4e66bcf7
movabs r8, 0x3ed4111c4e66bcf7
xor rdx, r8
and rcx, rdx
movabs rdx, 0xb66f021a8e7fa3fc
movabs r8, 0xb66f021a8e7fa3fc
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp - 0x41], cl
cmp eax, 0xdc364590
jae 0x14024e502
mov al, byte [rbp - 0x41]
test al, 1
jne 0x14024e08c
jmp 0x14024e09d
mov rcx, qword [rbp - 0x40]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x140269a00]
mov rax, qword [rax + 8]
mov qword [rbp - 0x50], rax
cmp rax, 0
je 0x14024e10b
mov rax, qword [rbp - 0x50]
mov rcx, qword [rax]
mov rdx, 0xffffffffffffffff
movabs rax, 0x4000000000000000
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x8603ee72877f7ed8
movabs rdx, 0x8603ee72877f7ed8
xor rcx, rdx
cmp rax, rcx
jne 0x14024e10b
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x1402699a8]
mov rax, qword [rax + 8]
mov qword [rbp - 0x58], rax
cmp rax, 0
je 0x14024e150
mov rcx, qword [rbp - 0x58]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14024e150
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x140269898]
mov rax, qword [rax + 8]
mov qword [rbp - 0x60], rax
cmp rax, 0
je 0x14024e27a
mov rax, qword [rbp - 0x60]
mov rax, qword [rax]
movabs rcx, 0xb375f5bf9b6e9f1d
movabs rdx, 0x4c8a0a40649160e2
xor rcx, rdx
xor rax, rcx
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
movabs rcx, 0x348ae3d06782b828
movabs r8, 0x8138a77f70116248
xor rcx, r8
movabs r8, 0xb532d87b9c77bdee
movabs r9, 0x4acd278463884211
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0xb5b244af1793da60
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x14024e27a
mov eax, dword [0x14025fc88]
mov edx, dword [0x14025fc8c]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0x70a5e140
xor ecx, 0x8d3d0929
and eax, ecx
or eax, 0x374df4cf
or eax, 0x97b20c18
cmp eax, 0xc9cd6f56
jae 0x14024e50b
mov rcx, qword [rbp - 0x60]
mov eax, dword [0x14025fc90]
xor edx, edx
div dword [0x14025fc94]
mov edx, eax
mov eax, edx
and eax, 0x618e802f
xor edx, 0x618e802f
or eax, edx
and eax, 0x773ea3a3
mov r8d, 0xd304cbdc
xor edx, edx
div r8d
mov dword [rbp - 0x64], eax
sub rsp, 0x20
call fcn.14000e9f6
mov eax, dword [rbp - 0x64]
add rsp, 0x20
cmp eax, 0x60ceb8d1
je 0x14024e224
jmp 0x14024e27a
mov rax, qword [0x140269948]
mov rax, qword [rax + 8]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x14024e2f8
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
movabs rdx, 0x4000000000000000
or rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xa83ae2a9cdca44e0
movabs rdx, 0xa83ae2a9cdca44e0
xor rcx, rdx
cmp rax, rcx
jne 0x14024e2f8
mov rcx, qword [rbp - 0x70]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x1402699f8]
mov rax, qword [rax + 8]
mov qword [rbp - 0x78], rax
cmp rax, 0
je 0x14024e364
mov rax, qword [rbp - 0x78]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
movabs rcx, 0x26b5e2fcf1e3d6f1
movabs rdx, 0x26b5e2fcf1e3d6f1
xor rcx, rdx
cmp rax, rcx
jne 0x14024e364
mov rcx, qword [rbp - 0x78]
sub rsp, 0x20
call fcn.14000e9f6
add rsp, 0x20
mov rax, qword [0x140269910]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14001b673
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov rax, qword [0x1402698d8]
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140018710
add rsp, 0x20
mov rax, qword [0x140269890]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400510c8
mov rax, qword [rbp + 0x20]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xb9
xor cl, 0xb9
cmp al, cl
jne 0x14024e4dd
mov rax, qword [0x140269950]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400525c0
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14024e4dd
mov rax, qword [0x1402699e8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400adfbb
add rsp, 0x20
mov rax, qword [0x1402699d0]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14004e67d
add rsp, 0x20
mov rax, qword [0x1402699c8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.140038cdc
mov rax, qword [rbp + 0x20]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14024e4dd
mov rax, qword [0x1402699c0]
mov rcx, qword [rax]
mov qword [rbp + 0x60], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x68], rax
lea rcx, [rbp + 0x60]
sub rsp, 0x20
call fcn.140037fe0
add rsp, 0x20
mov rax, qword [0x1402698e0]
mov rcx, qword [rax]
mov qword [rbp + 0x50], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x58], rax
lea rcx, [rbp + 0x50]
sub rsp, 0x20
call fcn.140018710
add rsp, 0x20
mov rax, qword [0x1402698e8]
mov rcx, qword [rax]
mov qword [rbp + 0x40], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x48], rax
lea rcx, [rbp + 0x40]
sub rsp, 0x20
call fcn.140018710
add rsp, 0x20
mov rax, qword [0x140269968]
mov rcx, qword [rax]
mov qword [rbp + 0x30], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x38], rax
lea rcx, [rbp + 0x30]
sub rsp, 0x20
call fcn.140038280
add rsp, 0x20
sub rsp, 0x20
call fcn.140037d85
nop
lea rsp, [rbp + 0x90]
pop rbp
ret
mov word [rcx - 0x5116b560], ss
idiv bh
dec dword [rsi]
mov esi, 0xa3e9f3b0
clc
invalid
invalid
sal dl, 0xe
or ecx, ebp
invalid
out 0xc7, eax
scasd eax, dword [rdi]
cmpsd dword [rsi], dword [rdi]
jmp 0x14024e224
sub rsp, 0x28
call fcn.14024d77f
nop
add rsp, 0x28
jmp 0x14024d800