Function at 0x14010b0c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0xe0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x48], r8
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], rcx
mov eax, dword [0x14018d734]
xor edx, edx
div dword [0x14018d738]
mov ecx, eax
xor ecx, 0x409961bd
sub ecx, 0x9471359a
add ecx, 0x7173bd76
add ecx, 0x9471359a
mov edx, 0xffffffff
xor edx, 0xd57dd95c
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0x3e28ba9e
je 0x14010bb87
mov rdx, qword [rbp + 0x58]
mov r9, qword [rbp + 0x50]
mov r11, qword [rbp + 0x48]
mov ecx, dword [0x14018d73c]
mov eax, dword [0x14018d740]
mov r8d, ecx
not r8d
or r8d, eax
mov eax, ecx
mov ecx, r8d
lea eax, [rax + rcx + 1]
imul rax, rax, 0x3f2af49b
shr rax, 0x3c
add eax, 0x75dd31dd
and eax, 0x1099113f
xor eax, 0x1960741
mov dword [rbp + 0x34], eax
mov eax, 0x10
mov qword [rbp + 0x20], rax
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov r10, rsp
mov qword [rbp - 0x20], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov r8, rsp
mov qword [rbp - 0x18], r8
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rcx, rsp
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rsi, rsp
mov qword [rbp - 0x10], rsi
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rsi, rsp
mov qword [rbp - 8], rsi
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rsi, rsp
mov qword [rbp], rsi
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rsi, rsp
mov qword [rbp + 8], rsi
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rsi, rsp
mov qword [rbp + 0x10], rsi
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rsi, rsp
mov qword [rbp + 0x18], rsi
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x20]
mov rsi, rsp
mov qword [rbp + 0x28], rsi
call fcn.14014d730
sub rsp, rax
mov eax, dword [rbp + 0x34]
mov rsi, rsp
mov qword [rbp + 0x38], rsi
mov qword [r10], r11
mov qword [r8], r9
mov qword [rcx], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x40], rcx
cmp eax, 0x36222afb
jae 0x14010b122
jmp 0x14010b25e
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x40]
mov qword [rcx], rdx
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
mov eax, dword [0x14018d744]
xor edx, edx
div dword [0x14018d748]
xor eax, 0x6bd7122a
and eax, 0x6fb14c2c
sub eax, 0xbabe616
cmp eax, 0x8a9977e5
je 0x14010bbd3
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x14018d74c]
xor edx, edx
div dword [0x14018d750]
add eax, 0xc3e04b88
mov edx, eax
xor edx, 0x7705a420
xor edx, 0xffffffff
and edx, 0x7705a420
shl edx, 1
sub edx, 0x7705a420
sub eax, edx
imul eax, eax, 0x1a30f2ac
mov dword [rbp - 0x30], eax
sub rsp, 0x20
call fcn.14010c990
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x30]
cmp rcx, rdx
seta cl
mov byte [rbp - 0x29], cl
cmp eax, 0x54efd1d5
jb 0x14010bbd3
mov al, byte [rbp - 0x29]
test al, 1
jne 0x14010b312
jmp 0x14010b492
mov ecx, dword [0x14018d754]
xor ecx, dword [0x14018d758]
mov edx, 0xffffffff
xor edx, 0x840f5224
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x3c014010
xor edx, edx
div ecx
add eax, 0xeb464b57
cmp eax, 0xebe9b679
ja 0x14010bbe9
mov r11d, dword [0x14018d75c]
mov r10d, dword [0x14018d760]
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x2026441e
mov eax, ecx
and eax, 0x2026441e
and r11d, edx
mov r9d, r8d
and r9d, 0x2026441e
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x2026441e
and ecx, edx
or eax, ecx
xor eax, 0x2adec645
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xa2360d2e
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
xor ecx, 0x2a07fab1
xor ecx, 0xffffffff
and ecx, 0x2a07fab1
shl ecx, 1
sub ecx, 0x2a07fab1
sub eax, ecx
mov dword [rbp - 0x34], eax
sub rsp, 0x20
call fcn.1400f16c0
mov eax, dword [rbp - 0x34]
add rsp, 0x20
cmp eax, 0x9650ce98
jb 0x14010b348
jmp 0x14010b3f2
mov eax, dword [0x14018d764]
or eax, dword [0x14018d768]
imul eax, eax, 0xb8dd32ad
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xa7fa9649
mov edx, 0xffffffff
xor edx, 0xa7fa9649
and eax, edx
sub eax, ecx
mov ecx, 0x7fb0719
xor edx, edx
div ecx
cmp eax, 0xafefaa9f
ja 0x14010bbfb
mov eax, dword [0x14018d76c]
xor eax, dword [0x14018d770]
imul eax, eax, 0xd0dd790
mov r8d, 0xffffffff
xor r8d, 0x2fda7349
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x2fda7349
or eax, 0x2fda7349
imul eax, edx
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x8a6b0437
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
cmp eax, 0xbd6fb9a
je 0x14010bbfb
mov eax, dword [0x14018d774]
add eax, dword [0x14018d778]
and eax, 0x8625c3d5
sub eax, 0xc51d0c35
mov ecx, 0x4cae0
xor edx, edx
div ecx
cmp eax, 0x94a3637
je 0x14010bc00
mov rcx, qword [rbp + 0x40]
mov eax, dword [0x14018d77c]
xor edx, edx
div dword [0x14018d780]
sub eax, 0x96197d6b
sub eax, 0x6c461db1
xor eax, 0x35b6c310
mov dword [rbp - 0x38], eax
sub rsp, 0x20
call fcn.14013f520
mov rdx, qword [rbp - 8]
mov rcx, qword [rbp]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x38]
mov qword [rdx], r8
lea rdx, [section..rdata]
mov qword [rcx], rdx
cmp eax, 0x1e0a3bbd
jb 0x14010bc00
jmp 0x14010b518
mov eax, dword [0x14018d784]
or eax, dword [0x14018d788]
sub eax, 0xafc70639
imul eax, eax, 0x6014fbc5
or eax, 0x76b50948
cmp eax, 0x7d6645ae
jae 0x14010bc2e
mov rcx, qword [rbp + 8]
mov eax, dword [0x14018d78c]
mov r9d, dword [0x14018d790]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0xb796cd2e
xor edx, edx
div r8d
sub eax, 0xf380b70c
mov r8d, 0xf36b6566
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x10]
mov dword [rbp - 0x3c], edx
mov r8, qword [rax]
lea rdx, [section..rdata]
sub rsp, 0x20
call fcn.1400f1770
add rsp, 0x20
mov eax, dword [rbp - 0x3c]
cmp eax, 0xaa8db0d9
je 0x14010bc2e
jmp 0x14010b5c6
mov eax, dword [0x14018d794]
xor edx, edx
div dword [0x14018d798]
sub eax, 0xbcb93aa8
sub eax, 0x88787db5
add eax, 0xbcb93aa8
xor ecx, ecx
sub ecx, 0x863f4855
add eax, ecx
xor eax, 0x2d800b62
cmp eax, 0x1360afe6
jbe 0x14010bc52
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x14018d79c]
mov r8d, dword [0x14018d7a0]
mov edx, eax
xor edx, r8d
xor r8d, 0xffffffff
and eax, r8d
shl eax, 1
sub eax, edx
mov r9d, 0xffffffff
xor r9d, 0x54748db5
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x54748db5
or eax, 0x54748db5
imul eax, r8d
add eax, edx
mov r9d, 0xffffffff
xor r9d, 0x72944024
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x72944024
or eax, 0x72944024
imul eax, r8d
add eax, edx
mov r8d, 0xd9e8272a
xor edx, edx
div r8d
cmp qword [rcx], 7
setbe cl
mov byte [rbp - 0x3d], cl
cmp eax, 0x4e9c2fc4
je 0x14010bc52
mov al, byte [rbp - 0x3d]
test al, 1
jne 0x14010b6b6
jmp 0x14010b853
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 0x20]
mov rdx, qword [rcx]
mov rcx, qword [rax]
mov qword [rcx + 0x10], rdx
mov rax, qword [rax]
mov qword [rax + 0x18], 7
mov eax, dword [0x14018d7a4]
mov edx, dword [0x14018d7a8]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, 0x95ade5b1
sub eax, ecx
mov ecx, 0xacf93fc4
xor edx, edx
div ecx
sub eax, 0x9830b634
add eax, 0x5be5f46
add eax, 0x9830b634
cmp eax, 0x10fd5872
ja 0x14010bc57
mov rcx, qword [rbp - 0x18]
mov eax, dword [0x14018d7ac]
sub eax, dword [0x14018d7b0]
sub eax, 0xa59f3ea7
mov r8d, 0x2b1935c9
xor edx, edx
div r8d
mov r8d, 0x3b781a0
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x20]
mov r8d, eax
mov rax, qword [rbp - 0x10]
mov dword [rbp - 0x44], r8d
mov r8, qword [rdx]
mov rdx, qword [rcx]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14010cdb0
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x10]
add rsp, 0x20
mov rax, qword [rbp - 0x20]
mov word [rdx], 0
mov rcx, qword [rcx]
mov rax, qword [rax]
shl rax, 1
add rcx, rax
sub rsp, 0x20
call fcn.1400ee590
mov eax, dword [rbp - 0x44]
add rsp, 0x20
cmp eax, 0x7b91f4fa
je 0x14010bc57
jmp 0x14010b7a5
mov eax, dword [0x14018d7b4]
mov ecx, dword [0x14018d7b8]
add eax, 0xd9ced294
sub eax, ecx
sub eax, 0xd9ced294
xor eax, 0x85d841d9
mov ecx, 0x1583e91b
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x318c63e4
xor ecx, 0x318c63e4
or eax, ecx
cmp eax, 0xb908a8b3
je 0x14010bca8
mov rcx, qword [rbp + 8]
mov edx, dword [0x14018d7bc]
or edx, dword [0x14018d7c0]
or edx, 0x760bef6a
xor edx, 0x4ec3640e
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x2645c97a
or eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x2645c97a
or edx, r8d
and eax, edx
xor eax, 0xffffffff
mov dword [rbp - 0x48], eax
sub rsp, 0x20
call fcn.1400f1f20
mov eax, dword [rbp - 0x48]
add rsp, 0x20
cmp eax, 0xd57eeafb
ja 0x14010b7e7
jmp 0x14010bb19
mov rcx, qword [rbp + 0x40]
sub rsp, 0x20
call fcn.14010c990
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax]
mov edx, 7
sub rsp, 0x20
call fcn.14013f540
mov rdx, qword [rbp + 0x18]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 8]
mov qword [rdx], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14010e350
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x28]
mov qword [rax], rcx
mov ecx, dword [0x14018d7c4]
mov edx, dword [0x14018d7c8]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0x7ddc53af
mov edx, 0xffffffff
xor edx, 0x7ddc53af
and eax, edx
shl eax, 1
sub eax, ecx
or eax, 0x2946a35f
and eax, 0x2defda01
cmp eax, 0x729e81c3
je 0x14010bcbe
mov eax, dword [0x14018d7cc]
xor edx, edx
div dword [str.aI]
mov rdx, qword [rbp + 0x28]
mov r8d, eax
mov rax, qword [rbp - 0x10]
mov ecx, r8d
and ecx, 0x8a5f2c67
xor r8d, 0x8a5f2c67
or ecx, r8d
imul edi, ecx, 0xeb9b8d66
mov r8d, edi
xor r8d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x6dabe33b
mov r9d, 0xffffffff
xor r9d, 0x58e5aaa9
mov ecx, r8d
and ecx, 0x58e5aaa9
and edi, r9d
mov r11d, r10d
and r11d, 0x58e5aaa9
mov esi, r9d
and esi, 0x6dabe33b
or ecx, edi
or r11d, esi
xor ecx, r11d
or r8d, r10d
xor r8d, 0xffffffff
or r9d, 0x58e5aaa9
and r8d, r9d
or ecx, r8d
mov dword [rbp - 0x4c], ecx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14010e900
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov r11, qword [rdx]
mov r10, qword [r8]
mov qword [r10 + 0x10], r11
mov r9, qword [r9]
mov r8, qword [r8]
mov qword [r8 + 0x18], r9
mov rdx, qword [rdx]
mov qword [rbp - 0x58], rdx
mov rcx, qword [rcx]
mov qword [rbp - 0x60], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14013f560
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x58]
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14010cdb0
mov rcx, qword [rbp + 0x38]
add rsp, 0x20
mov eax, dword [rbp - 0x4c]
mov word [rcx], 0
cmp eax, 0xe80894a5
jbe 0x14010b8ea
jmp 0x14010ba05
mov r11d, dword [0x14018d7d4]
mov r10d, dword [0x14018d7d8]
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, r10d
xor r8d, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x96ceb904
mov eax, ecx
and eax, 0x96ceb904
and r11d, edx
mov r9d, r8d
and r9d, 0x96ceb904
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x96ceb904
and ecx, edx
or eax, ecx
mov edx, 0xffffffff
xor edx, 0xfca5eea6
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xfca5eea6
add eax, edx
sub eax, ecx
mov ecx, 0xc86d63fa
xor edx, edx
div ecx
add eax, 0x92c188aa
cmp eax, 0x6b5e1992
jbe 0x14010bd42
mov edx, dword [0x14018d7dc]
mov ecx, dword [0x14018d7e0]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, ecx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xd6221640
and eax, 0xcbdf0ec
mov ecx, 0xe403a98d
xor edx, edx
div ecx
mov ecx, eax
mov rax, qword [rbp + 0x28]
mov dword [rbp - 0x64], ecx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14010ec80
mov rdx, qword [rbp + 0x38]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x20]
mov rax, qword [rax]
shl rax, 1
add rcx, rax
sub rsp, 0x20
call fcn.1400ee590
mov rcx, qword [rbp + 8]
call fcn.1400f1f20
mov eax, dword [rbp - 0x64]
add rsp, 0x20
cmp eax, 0x890a8ff2
je 0x14010ba8f
jmp 0x14010bb19
mov eax, dword [0x14018d7e4]
xor eax, dword [0x14018d7e8]
sub eax, 0x45ee6c09
sub eax, 0x5b6baf6d
xor eax, 0x6998ba85
cmp eax, 0x75a9f957
jbe 0x14010bd85
mov eax, dword [0x14018d7ec]
mov edx, dword [0x14018d7f0]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x21760598
add eax, ecx
add eax, 1
xor ecx, ecx
sub ecx, 0x90fcf0f1
add eax, ecx
or eax, 0xf052f98c
cmp eax, 0xfef06b8
jb 0x14010bd85
lea rsp, [rbp + 0x60]
pop rdi
pop rsi
pop rbp
ret
mov rcx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x50]
mov r10, qword [rbp + 0x48]
mov eax, 0x10
mov qword [rbp - 0x70], rax
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp - 0x70]
mov r9, rsp
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp - 0x70]
mov rdx, rsp
call fcn.14014d730
sub rsp, rax
mov rax, rsp
mov qword [r9], r10
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x14010b122
mov rcx, qword [rbp + 0x40]
sub rsp, 0x20
call fcn.14013f580
add rsp, 0x20
jmp 0x14010b29c
sub rsp, 0x20
call fcn.14013ef20
add rsp, 0x20
jmp 0x14010b348
jmp 0x14010b432
mov rcx, qword [rbp + 0x40]
sub rsp, 0x20
call fcn.1400edec0
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp]
mov qword [rcx], rdx
lea rcx, [section..rdata]
mov qword [rax], rcx
jmp 0x14010b4bc
mov rcx, qword [rbp + 8]
mov rax, qword [rbp - 0x10]
mov r8, qword [rax]
lea rdx, [section..rdata]
sub rsp, 0x20
call fcn.14013f5a0
add rsp, 0x20
jmp 0x14010b53f
jmp 0x14010b5fd
mov rdx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 0x18]
mov r8, qword [rdx]
mov rdx, qword [rcx]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14013f5c0
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp + 0x10]
add rsp, 0x20
mov rax, qword [rbp - 0x20]
mov word [rdx], 0
mov rcx, qword [rcx]
mov rax, qword [rax]
shl rax, 1
add rcx, rax
sub rsp, 0x20
call fcn.14013f5e0
add rsp, 0x20
jmp 0x14010b718
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.1400f1f20
add rsp, 0x20
jmp 0x14010b7e7
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14010e900
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp - 0x10]
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp - 0x18]
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov r11, qword [rdx]
mov r10, qword [r8]
mov qword [r10 + 0x10], r11
mov r9, qword [r9]
mov r8, qword [r8]
mov qword [r8 + 0x18], r9
mov rdx, qword [rdx]
mov qword [rbp - 0x78], rdx
mov rcx, qword [rcx]
mov qword [rbp - 0x80], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14010ec80
mov rdx, qword [rbp - 0x80]
mov r8, qword [rbp - 0x78]
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14010cdb0
add rsp, 0x20
mov rax, qword [rbp + 0x38]
mov word [rax], 0
jmp 0x14010b8ea
mov rax, qword [rbp + 0x28]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14010ec80
mov rdx, qword [rbp + 0x38]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp - 0x20]
mov rax, qword [rax]
shl rax, 1
add rcx, rax
sub rsp, 0x20
call fcn.14013f5e0
mov rcx, qword [rbp + 8]
call fcn.1400f1f20
add rsp, 0x20
jmp 0x14010ba8f
jmp 0x14010bb3f