Function at 0x1400ff7d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0xd0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x30], r9
mov byte [rbp + 0x3f], r8b
mov qword [rbp + 0x40], rdx
mov qword [rbp + 0x48], rcx
mov eax, dword [0x14018cef4]
or eax, dword [0x14018cef8]
or eax, 0xce8253e6
mov ecx, eax
and ecx, 0x4bb3c6f9
shl ecx, 1
add eax, 0x4bb3c6f9
sub eax, ecx
mov ecx, eax
and ecx, 0xa2a040fd
shl ecx, 1
add eax, 0xa2a040fd
sub eax, ecx
cmp eax, 0x7944de90
je 0x140100276
mov rdx, qword [rbp + 0x30]
mov r9b, byte [rbp + 0x3f]
mov ecx, dword [0x14018cefc]
mov eax, dword [0x14018cf00]
or ecx, eax
mov r8d, ecx
not r8d
or r8d, 0x75c7b058
mov eax, ecx
mov ecx, r8d
lea eax, [rax + rcx + 1]
imul rax, rax, 0x23c34f7
shr rax, 0x39
or eax, 0xf62d088e
mov dword [rbp + 0x24], eax
mov eax, 0x10
mov qword [rbp + 0x10], rax
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov r8, rsp
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov rcx, rsp
mov qword [rbp - 0x18], rcx
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov r10, rsp
mov qword [rbp - 0x10], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov r10, rsp
mov qword [rbp - 8], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov r10, rsp
mov qword [rbp], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov r10, rsp
mov qword [rbp + 8], r10
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp + 0x10]
mov r10, rsp
mov qword [rbp + 0x18], r10
call fcn.14014d730
sub rsp, rax
mov eax, dword [rbp + 0x24]
mov r10, rsp
mov qword [rbp + 0x28], r10
mov byte [r8], r9b
mov qword [rcx], rdx
cmp eax, 0xc8d31d1b
jb 0x140100276
jmp 0x1400ff91f
mov rax, qword [rbp - 8]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rbp - 0x10]
mov r8, qword [rbp + 0x40]
mov qword [rdx], r8
mov qword [rax], rcx
mov eax, dword [0x14018cf04]
or eax, dword [0x14018cf08]
sub eax, 0xd0ac9eea
mov r8d, 0xffffffff
xor r8d, 0x3cdb76d4
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x3cdb76d4
or eax, 0x3cdb76d4
imul eax, edx
add eax, ecx
add eax, 0x171e7619
cmp eax, 0xdd6f4c14
je 0x1401002ac
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 8]
mov r8d, dword [0x14018cf0c]
mov r10d, dword [0x14018cf10]
mov edx, r8d
xor edx, 0xffffffff
mov r9d, r8d
xor r9d, 0xffffffff
or edx, r9d
and edx, r10d
xor edx, 0xffffffff
mov r9d, r10d
xor r9d, 0xffffffff
xor r10d, 0xffffffff
or r9d, r10d
and r8d, r9d
xor r8d, 0xffffffff
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
imul edx, edx, 0xefd87dc1
mov r8d, edx
add r8d, 1
xor edx, 0xffffffff
or edx, 0xffec7389
add edx, r8d
xor edx, 0x5a9d0212
mov dword [rbp - 0x20], edx
mov rcx, qword [rcx]
mov qword [rbp - 0x30], rcx
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
sub rsp, 0x20
call fcn.1400f1120
mov rcx, qword [rbp - 0x28]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x20]
cmp rcx, rdx
seta cl
mov byte [rbp - 0x19], cl
cmp eax, 0xbdfbd0
jb 0x1400ff985
mov al, byte [rbp - 0x19]
test al, 1
jne 0x1400ffa3b
jmp 0x1400ffc1d
mov eax, dword [0x14018cf14]
xor edx, edx
div dword [0x14018cf18]
mov ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
and eax, 0x455d2e33
xor eax, 0xffffffff
mov edx, 0x455d2e33
and edx, 0x455d2e33
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
xor eax, 0xa1696f3f
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x34b017b2
mov edx, 0xffffffff
xor edx, 0x34b017b2
and eax, edx
sub eax, ecx
cmp eax, 0xf15f0937
jae 0x1401002c5
mov r11d, dword [0x14018cf1c]
mov eax, dword [0x14018cf20]
add r11d, 0xe6183b76
sub r11d, eax
sub r11d, 0xe6183b76
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xe27418d3
mov edx, 0xffffffff
xor edx, 0x7e479c57
mov eax, ecx
and eax, 0x7e479c57
and r11d, edx
mov r9d, r8d
and r9d, 0x7e479c57
mov r10d, edx
and r10d, 0xe27418d3
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x7e479c57
and ecx, edx
or eax, ecx
sub eax, 0x3a08876f
mov ecx, 0x26301b44
xor edx, edx
div ecx
mov dword [rbp - 0x34], eax
sub rsp, 0x20
call fcn.1400f16c0
mov eax, dword [rbp - 0x34]
add rsp, 0x20
cmp eax, 0x32751ecb
jae 0x1401002c5
jmp 0x1400ffb40
mov eax, dword [0x14018cf24]
mov edx, dword [0x14018cf28]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, eax
xor ecx, 0x341de341
xor ecx, 0xffffffff
or eax, 0x341de341
and eax, ecx
mov ecx, 0xc6968ac3
xor edx, edx
div ecx
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x863afbdc
mov edx, 0xffffffff
xor edx, 0x312987b6
mov eax, ecx
and eax, 0x312987b6
and r11d, edx
mov r9d, r8d
and r9d, 0x312987b6
mov r10d, edx
and r10d, 0x863afbdc
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x312987b6
and ecx, edx
or eax, ecx
cmp eax, 0xd48c37cd
je 0x1401002d7
mov eax, dword [0x14018cf2c]
mov edx, dword [0x14018cf30]
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov ecx, eax
and ecx, 0xb69d61fd
shl ecx, 1
xor eax, 0xb69d61fd
add eax, ecx
and eax, 0x7b5ea359
mov ecx, eax
xor ecx, 0xb29f4ee8
xor ecx, 0xffffffff
or eax, 0xb29f4ee8
and eax, ecx
cmp eax, 0xeaeccd59
jae 0x1401002d7
mov r11d, dword [0x14018cf34]
mov edx, dword [0x14018cf38]
mov r8d, edx
xor r8d, 0xffffffff
mov ecx, r11d
and ecx, r8d
mov eax, r11d
or eax, r8d
xor eax, 0xffffffff
imul eax, ecx
mov ecx, r11d
and ecx, edx
or r11d, edx
imul r11d, ecx
add r11d, eax
add r11d, 0xc2f84a1f
or r11d, 0xc23dc8f3
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x59e8d983
mov edx, 0xffffffff
xor edx, 0x2e5bcdff
mov eax, ecx
and eax, 0x2e5bcdff
and r11d, edx
mov r9d, r8d
and r9d, 0x2e5bcdff
mov r10d, edx
and r10d, 0x59e8d983
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x2e5bcdff
and ecx, edx
or eax, ecx
cmp eax, 0xe588fa51
je 0x1401002dc
mov eax, dword [0x14018cf3c]
mov edx, dword [0x14018cf40]
mov ecx, eax
xor ecx, edx
xor edx, 0xffffffff
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0xa620488a
xor edx, edx
div ecx
add eax, 0x5a0f0e86
mov ecx, 0x795849ca
xor edx, edx
div ecx
cmp eax, 0x6659e241
je 0x1400ffcc0
jmp 0x1400ffd00
mov rdx, qword [rbp]
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 0x30]
mov r8, qword [rcx + 0x18]
mov qword [rdx], r8
mov rdx, qword [rax]
sub rsp, 0x20
call fcn.140100330
mov rcx, qword [rbp - 0x30]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 8]
mov qword [rax], rdx
sub rsp, 0x20
call fcn.1400ea7c0
mov rdx, qword [rbp + 8]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x18]
mov qword [rax], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400f34c0
mov rcx, qword [rbp - 0x30]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x28]
mov qword [rax], rdx
sub rsp, 0x20
call fcn.14013ed20
mov r9, qword [rbp + 8]
mov r8, qword [rbp - 0x30]
mov rdx, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov r10, qword [rcx]
mov qword [r8 + 0x10], r10
mov r9, qword [r9]
mov qword [r8 + 0x18], r9
mov rdx, qword [rdx]
mov qword [rbp - 0x40], rdx
mov rcx, qword [rcx]
mov qword [rbp - 0x48], rcx
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.1400f3d50
mov rdx, qword [rbp - 0x48]
mov r8, qword [rbp - 0x40]
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14013f2e0
mov rax, qword [rbp]
add rsp, 0x20
cmp qword [rax], 0xf
seta al
mov byte [rbp - 0x35], al
mov eax, dword [0x14018cf44]
xor eax, dword [0x14018cf48]
mov ecx, 0xc4997089
xor edx, edx
div ecx
or eax, 0x17956fac
mov ecx, eax
and ecx, 0xcbe815b6
xor ecx, 0xffffffff
add eax, 0xcbe815b6
add eax, 1
add eax, ecx
cmp eax, 0xf654dce1
ja 0x1401002e1
mov eax, dword [0x14018cf4c]
and eax, dword [0x14018cf50]
xor eax, 0xbece7c93
sub eax, 0xdf011c98
xor eax, 0x87a2d573
cmp eax, 0xeee81027
ja 0x1400ffe17
mov al, byte [rbp - 0x35]
test al, 1
jne 0x1400ffe4d
jmp 0x1400fffc6
mov eax, dword [0x14018cf54]
sub eax, dword [0x14018cf58]
mov ecx, 0x1323d
xor edx, edx
div ecx
mov ecx, 0xcaf72a57
xor edx, edx
div ecx
mov ecx, 0x47825cb6
xor edx, edx
div ecx
cmp eax, 0x725ad8c3
jae 0x1401002e6
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp - 0x30]
mov r8, qword [rbp]
mov r9d, dword [0x14018cf5c]
imul r9d, dword [0x14018cf60]
mov eax, r9d
xor eax, 0xffffffff
and eax, 0x9573d3
mov r10d, 0xffffffff
xor r10d, 0x9573d3
and r9d, r10d
or eax, r9d
imul eax, eax, 0x7cd59cb5
mov r10d, eax
xor r10d, 0xffffffff
and r10d, 0xf1dd86ca
mov r11d, 0xffffffff
xor r11d, 0xf1dd86ca
mov r9d, eax
and r9d, r11d
imul r9d, r10d
mov r10d, eax
and r10d, 0xf1dd86ca
or eax, 0xf1dd86ca
imul eax, r10d
add eax, r9d
mov r8, qword [r8]
mov qword [rbp - 0x60], r8
mov rdx, qword [rdx]
mov qword [rbp - 0x58], rdx
mov rcx, qword [rcx]
mov qword [rbp - 0x50], rcx
cmp eax, 0x4730d2f0
jbe 0x1400ffe7f
jmp 0x1400fff1e
mov r8, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x50]
sub rsp, 0x20
call fcn.1400ea840
mov rax, qword [rbp + 0x28]
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x68], rax
mov eax, dword [0x14018cf64]
imul eax, dword [0x14018cf68]
mov ecx, 0x80275cc3
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x4e02b297
shl ecx, 1
add eax, 0x4e02b297
sub eax, ecx
and eax, 0xa0087f45
cmp eax, 0xd0ca7b3b
jae 0x1401002eb
mov rcx, qword [rbp - 0x30]
mov eax, dword [0x14018cf6c]
mov r8d, dword [0x14018cf70]
mov edx, eax
xor edx, r8d
xor r8d, 0xffffffff
and eax, r8d
shl eax, 1
sub eax, edx
mov r8d, 0xc186db5
xor edx, edx
div r8d
mov rdx, qword [rbp - 0x68]
xor eax, 0xf02c74aa
xor eax, 0xa899d889
mov qword [rcx], rdx
cmp eax, 0x2644993e
jb 0x1400fff79
jmp 0x1401001f0
mov eax, dword [0x14018cf74]
mov edx, dword [0x14018cf78]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, edx
add eax, ecx
add eax, 0x43fa3b07
sub eax, 0x420a3254
sub eax, 0x43fa3b07
sub eax, 0x42afb95
and eax, 0x3a475137
cmp eax, 0xd987d626
ja 0x1401002fb
mov eax, dword [str.m_LBD]
mov edx, dword [0x14018cf80]
xor eax, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xd16dfc60
or eax, edx
or ecx, 0xd16dfc60
xor eax, 0xffffffff
and eax, ecx
mov ecx, eax
xor ecx, 0x717cb9ef
xor ecx, 0xffffffff
or eax, 0x717cb9ef
and eax, ecx
imul eax, eax, 0xc5b0671
or eax, 0xda2dd009
cmp eax, 0x744a1dd1
jb 0x140100002
jmp 0x140100059
mov eax, dword [0x14018cf84]
xor edx, edx
div dword [0x14018cf88]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x6c6f312e
add eax, ecx
mov ecx, eax
and ecx, 0x2756093d
shl ecx, 1
xor eax, 0x2756093d
add eax, ecx
mov ecx, 0xa112ac54
xor edx, edx
div ecx
cmp eax, 0x4c7dfa65
ja 0x140100300
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x30]
mov r10d, dword [0x14018cf8c]
mov r9d, dword [0x14018cf90]
mov eax, r10d
xor eax, 0xffffffff
mov r8d, r9d
and r8d, eax
mov r11d, r9d
xor r11d, 0xffffffff
mov eax, r10d
and eax, r11d
imul eax, r8d
mov r8d, r10d
and r8d, r9d
or r10d, r9d
imul r10d, r8d
add r10d, eax
add r10d, 0xd527867f
sub r10d, 0x89a032ff
mov eax, r10d
xor eax, 0xffffffff
and eax, 0xd5d6ded7
mov r9d, 0xffffffff
xor r9d, 0xd5d6ded7
and r10d, r9d
mov r8d, 0xffffffff
xor r8d, 0xd40e14ac
and r8d, 0xd5d6ded7
and r9d, 0xd40e14ac
or eax, r10d
or r8d, r9d
xor eax, r8d
mov dword [rbp - 0x6c], eax
sub rsp, 0x20
call fcn.1400f3880
mov eax, dword [rbp - 0x6c]
add rsp, 0x20
cmp eax, 0x46b9e352
je 0x140100300
jmp 0x14010014e
mov eax, dword [0x14018cf94]
mov r8d, dword [0x14018cf98]
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, eax
and ecx, 0x88107c1f
shl ecx, 1
xor eax, 0x88107c1f
add eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xc006efbe
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
imul eax, eax, 0x9eaa0805
cmp eax, 0x695dc516
jbe 0x14010031a
mov eax, dword [0x14018cf9c]
or eax, dword [0x14018cfa0]
sub eax, 0xc768bdff
mov ecx, 0xb31da879
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
and eax, 0x402bcd91
xor ecx, 0x402bcd91
or eax, ecx
cmp eax, 0x69aca7d5
ja 0x1401001b5
jmp 0x1401001f0
mov eax, dword [0x14018cfa4]
imul eax, dword [0x14018cfa8]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x39b7da6e
add eax, ecx
add eax, 0xb95e9dd5
mov ecx, 0xede42851
xor edx, edx
div ecx
cmp eax, 0x12c6ab07
jae 0x14010031f
mov eax, dword [0x14018cfac]
xor eax, dword [0x14018cfb0]
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x9f8bb468
mov edx, 0xffffffff
xor edx, 0x9f8bb468
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
imul eax, eax, 0xe0eb35ab
xor eax, 0x28f4f53b
cmp eax, 0x2510ad8b
jbe 0x140100225
mov rax, qword [rbp - 0x30]
lea rsp, [rbp + 0x50]
pop rbp
ret
mov rcx, qword [rbp + 0x30]
mov r8b, byte [rbp + 0x3f]
mov eax, 0x10
mov qword [rbp - 0x78], rax
call fcn.14014d730
sub rsp, rax
mov rax, qword [rbp - 0x78]
mov rdx, rsp
call fcn.14014d730
sub rsp, rax
mov rax, rsp
mov byte [rdx], r8b
mov qword [rax], rcx
jmp 0x1400ff82e
mov rax, qword [rbp - 8]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.14013ef00
add rsp, 0x20
jmp 0x1400ff985
sub rsp, 0x20
call fcn.14013ef20
add rsp, 0x20
jmp 0x1400ffa9c
jmp 0x1400ffbd8
jmp 0x1400ffcc0
jmp 0x1400ffe17
jmp 0x1400ffe7f
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x68]
mov qword [rax], rcx
jmp 0x1400fff79
jmp 0x140100002
mov rdx, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.14013ef60
add rsp, 0x20
jmp 0x14010009b
jmp 0x1401001b5
jmp 0x140100225