Function at 0x14012c6d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x1f0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x160], rdx
mov qword [rbp + 0x168], rcx
mov eax, dword [0x1401e2ba8]
mov ecx, 0x445a7736
xor ecx, 0xb5be813f
xor eax, ecx
xor edx, edx
div dword [0x1401e2bac]
mov edx, 0x6d1ec487
xor edx, 0xefbe4727
mov ecx, eax
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x82a083a0
and eax, edx
shl eax, 1
sub eax, ecx
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x2da79724
xor ecx, 0x542bb9e
mov edx, 0xd0ab791c
xor edx, 0x2f5486e3
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x28e52cba
or ecx, edx
and eax, ecx
mov ecx, 0x689da441
xor ecx, 0x97625bbe
xor eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xe317987c
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xe317987c
or eax, 0xe317987c
imul eax, edx
add eax, ecx
mov ecx, 0x505249fa
xor ecx, 0xf195e56d
cmp eax, ecx
jbe 0x14012daeb
mov eax, dword [0x1401e2bb0]
mov ecx, dword [0x1401e2bb4]
imul eax, ecx
imul eax, eax, 0x57e685b2
mov ecx, eax
not ecx
and ecx, 0x78b7bca
and eax, 0xf8748434
sub eax, ecx
xor eax, 0x1dca59b6
mov dword [rbp + 0x144], eax
mov eax, 0x10
mov qword [rbp + 0x128], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0xe0], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0xe8], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0xf0], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0xf8], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x100], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x108], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x110], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x118], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x120], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x128]
mov rcx, rsp
mov qword [rbp + 0x130], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x138], rax
sub rsp, 0x20
call fcn.14012dbd0
mov rcx, qword [rbp + 0x168]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x144]
add rdx, 0x60
mov qword [rbp + 0x148], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0x150], rcx
cmp rcx, 0
setl cl
mov byte [rbp + 0x15f], cl
cmp eax, 0x58e8f95b
jb 0x14012daeb
mov al, byte [rbp + 0x15f]
test al, 1
jne 0x14012c9c1
jmp 0x14012c94b
mov rcx, qword [rbp + 0xe0]
mov r8, qword [rbp + 0x150]
mov rax, qword [rbp + 0x168]
mov r9, qword [rax + 8]
mov rdx, r9
add rdx, 8
xor eax, eax
cmp r9, 0
cmove rdx, rax
sub rsp, 0x20
call fcn.1400254b0
mov rax, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0x148]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0xc0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xc8], rax
cmp byte [rdx], 0
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
je 0x14012ca32
jmp 0x14012d8db
mov r8, qword [rbp + 0x150]
mov rax, r8
and rax, 0xffffffffffffffff
shl rax, 1
movabs rcx, 0x1bd9d73e224642af
movabs rdx, 0xe42628c1ddb9bd50
xor rcx, rdx
mov rdx, r8
xor rdx, rcx
add rdx, rax
movabs rcx, 0xe82ccbf05b1108be
movabs rax, 0xe82ccbf05b1108be
xor rcx, rax
sub rsp, 0x20
call fcn.14001fc20
mov rax, qword [rbp + 0x148]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xab
xor cl, 0xab
cmp al, cl
je 0x14012caab
jmp 0x14012d8db
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xc8]
movabs rdx, 0x32026f92f84112a
movabs r8, 0x32026f92f84112b
xor rdx, r8
cmp rax, rdx
mov qword [rbp + 0xb0], rcx
mov qword [rbp + 0xb8], rax
jge 0x14012caab
mov rdx, qword [rbp + 0xc0]
add rdx, 0xffffffffffffffff
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1400137e9
mov rcx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0xc8]
add rsp, 0x20
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jmp 0x14012d8db
mov rcx, qword [rbp + 0xb0]
mov rax, qword [rbp + 0xb8]
mov qword [rbp + 0x98], rax
mov qword [rbp + 0xa0], rcx
add rcx, 8
mov qword [rbp + 0x90], rcx
sub rsp, 0x20
call fcn.1401295c0
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0xa8], r8
cmp byte [rdx], 0
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jne 0x14012d8db
mov rax, qword [rbp + 0xa8]
cmp rax, 0
jne 0x14012cc4c
mov rax, qword [rbp + 0x160]
mov rax, qword [rax + 8]
mov qword [rbp + 0x88], rax
cmp rax, 0
je 0x14012cba4
mov rax, qword [rbp + 0x88]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0x16ff2381e0c6a458
movabs rdx, 0x16ff2381e0c6a458
xor rcx, rdx
cmp rax, rcx
jne 0x14012cba4
mov rcx, qword [rbp + 0x88]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x168]
mov rax, qword [rax + 8]
mov qword [rbp + 0x80], rax
cmp rax, 0
je 0x14012cc19
mov rax, qword [rbp + 0x80]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
movabs rdx, 0xad31854e8d9c1cd5
movabs r8, 0x52ce7ab17263e32a
xor rdx, r8
xor rax, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x14012cc19
mov rcx, qword [rbp + 0x80]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x98]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140025a20
add rsp, 0x20
xor eax, eax
mov byte [rbp + 0x7f], al
jmp 0x14012dadf
mov ecx, dword [0x1401e2bb8]
xor ecx, 0x1b37d231
sub ecx, dword [0x1401e2bbc]
and ecx, ecx
mov eax, 0x8a165e0d
xor eax, 0x75e9a1f2
xor ecx, eax
mov eax, 0xaf92690b
xor eax, 0x19f0149f
mov edx, 0x6f7b7ff3
xor edx, 0xd9190267
and eax, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov edx, 0xa88022dc
xor edx, 0xa711ddc0
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0xf91ff1c
and ecx, edx
shl ecx, 1
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb01e168
and eax, edx
mov edx, 0xa03e5bc7
xor edx, 0x5fc1a438
xor ecx, edx
mov edx, 0x28f9b369
xor edx, 0x23f85201
mov r8d, 0x7c6d051f
xor r8d, 0x8392fae0
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0xd5eee56e
jae 0x14012daf4
mov rcx, qword [rbp + 0x90]
mov eax, dword [0x1401e2bc0]
and eax, dword [0x1401e2bc4]
and eax, 0x67b2409
and eax, 0xc5b79f4a
mov r8d, 0xf745eeb9
xor r8d, 0x90f90da9
mov edx, eax
and edx, r8d
shl edx, 1
add eax, 0x67bce310
sub eax, edx
mov dword [rbp + 0x6c], eax
movabs rdx, 0x8a8b24975de5e405
movabs rax, 0x8a8b24975de5e400
xor rdx, rax
sub rsp, 0x20
call fcn.14012975d
mov rcx, qword [rbp + 0x148]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x6c]
mov qword [rbp + 0x70], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x7e], cl
cmp eax, 0x25f2cd84
jb 0x14012ccfe
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov dl, byte [rbp + 0x7e]
test dl, 1
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jne 0x14012cdb0
jmp 0x14012d8db
mov eax, dword [0x1401e2bc8]
mov ecx, 0x43de39c0
xor ecx, 0xcf1194d7
xor eax, ecx
mov edx, dword [0x1401e2bcc]
xor edx, 0xdce0c60b
mov ecx, edx
and ecx, eax
xor ecx, 0xffffffff
add eax, edx
add eax, 1
add eax, ecx
mov ecx, eax
and ecx, 0x632a089f
xor ecx, 0xffffffff
add eax, 0x632a089f
add eax, 1
add eax, ecx
and eax, 0x653889ef
mov ecx, eax
xor ecx, 0x4fd57aa8
xor ecx, 0xffffffff
or eax, 0x4fd57aa8
and eax, ecx
cmp eax, 0xe27b5cce
jae 0x14012dafd
mov rdx, qword [rbp + 0xa8]
mov eax, dword [0x1401e2bd0]
mov r9d, dword [0x1401e2bd4]
mov ecx, eax
not ecx
mov r8d, r9d
and r8d, ecx
mov r10d, r9d
not r10d
mov ecx, eax
and ecx, r10d
imul ecx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, ecx
or eax, 0xeaada886
imul rax, rax, 0xb160f1
shr rax, 0x36
and eax, 0xfffffffe
mov dword [rbp + 0x5c], eax
mov rax, rdx
add rax, 0x30
mov qword [rbp + 0x38], rax
mov rcx, qword [rdx + 0x30]
mov qword [rbp + 0x40], rcx
mov rax, rcx
mov qword [rbp + 0x48], rax
mov rax, qword [0x1401f0a28]
mov rax, qword [rax]
mov r8, rdx
add r8, 0x50
mov qword [rbp + 0x50], r8
movsxd rdx, dword [rdx + 0x50]
sub rsp, 0x20
mov r8d, 0x3000
mov r9d, 0x40
call rax
mov rdx, qword [rbp + 0x70]
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x5c]
mov r8, rcx
mov qword [rbp + 0x60], r8
test rcx, rcx
sete r8b
mov byte [rbp + 0x6a], r8b
or rcx, rdx
sete cl
mov byte [rbp + 0x6b], cl
cmp eax, 0x5a0e20ec
jae 0x14012dafd
mov al, byte [rbp + 0x6b]
test al, 1
jne 0x14012ceef
jmp 0x14012d04d
mov rax, qword [rbp + 0x160]
mov rax, qword [rax + 8]
mov qword [rbp + 0x30], rax
cmp rax, 0
je 0x14012cf4a
mov rcx, qword [rbp + 0x30]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x3a16607bd56cda1c
movabs rdx, 0x3a16607bd56cda1c
xor rcx, rdx
cmp rax, rcx
jne 0x14012cf4a
mov rcx, qword [rbp + 0x30]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x168]
mov rax, qword [rax + 8]
mov qword [rbp + 0x28], rax
cmp rax, 0
je 0x14012d01a
mov rax, qword [rbp + 0x28]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
movabs rdx, 0x6de417b76b9d97c3
movabs r8, 0x921be8489462683c
xor rdx, r8
xor rax, rdx
movabs rdx, 0xd39d96b1bf725816
movabs r8, 0x2c62694e408da7e9
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x5636b2030af251e4
movabs r8, 0x1636b2030af251e4
xor rdx, r8
movabs r8, 0x4a72a30baddd54d9
movabs r9, 0xb58d5cf45222ab26
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0x520092773bfdcb1a
movabs rdx, 0x520092773bfdcb1a
xor rcx, rdx
cmp rax, rcx
jne 0x14012d01a
mov rcx, qword [rbp + 0x28]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rcx, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x98]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140025a20
add rsp, 0x20
mov al, 1
mov byte [rbp + 0x7f], al
jmp 0x14012dadf
mov rax, qword [rbp + 0x60]
mov cl, byte [rbp + 0x6a]
mov rdx, qword [rbp + 0x70]
test rdx, rdx
setne dl
and cl, dl
test cl, 1
mov qword [rbp + 0x20], rax
jne 0x14012d072
jmp 0x14012d1be
mov rcx, qword [rbp + 0x50]
mov rax, qword [0x1401f0a28]
mov rax, qword [rax]
movsxd rdx, dword [rcx]
xor ecx, ecx
mov r8d, 0x3000
mov r9d, 0x40
sub rsp, 0x20
call rax
add rsp, 0x20
cmp rax, 0
mov qword [rbp + 0x20], rax
jne 0x14012d1be
mov rax, qword [rbp + 0x160]
mov rax, qword [rax + 8]
mov qword [rbp + 0x18], rax
cmp rax, 0
je 0x14012d0ee
mov rcx, qword [rbp + 0x18]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x14012d0ee
mov rcx, qword [rbp + 0x18]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x168]
mov rax, qword [rax + 8]
mov qword [rbp + 0x10], rax
cmp rax, 0
je 0x14012d18b
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
movabs rdx, 0x4000000000000000
mov rax, rcx
and rax, rdx
movabs rdx, 0x3d7895b349a8fd66
movabs r8, 0xc2876a4cb6570299
xor rdx, r8
xor rax, rdx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
and rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0x914aad76e6bacece
movabs rdx, 0x914aad76e6bacece
xor rcx, rdx
cmp rax, rcx
jne 0x14012d18b
mov rcx, qword [rbp + 0x10]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rcx, qword [rbp + 0xf8]
mov rax, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x98]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140025a20
add rsp, 0x20
mov al, 2
mov byte [rbp + 0x7f], al
jmp 0x14012dadf
mov rax, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0x38]
mov rdx, qword [rbp + 0x20]
mov qword [rbp], rdx
mov qword [rcx], rdx
mov eax, dword [rax + 0x54]
movsxd rcx, eax
mov qword [rbp + 8], rcx
cmp eax, 0
jge 0x14012d331
mov eax, dword [0x1401e2bd8]
mov ecx, 0xf7d93233
xor ecx, 0xff888a44
xor eax, ecx
mov ecx, dword [0x1401e2bdc]
sub eax, 0x73cffb4
add eax, ecx
add eax, 0x73cffb4
imul eax, eax, 0xc24e7a8d
or eax, eax
xor eax, 0xffffffff
mov ecx, 0x7f1be0b7
xor ecx, 0x2f6af0b0
mov edx, 0x6ee8f2d1
xor edx, 0x91170d2e
xor ecx, edx
mov edx, 0xced8add2
xor edx, 0x9ea9bdd5
mov r8d, 0xe4517546
xor r8d, 0x1bae8ab9
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov r8d, 0xd349f24e
xor r8d, 0xa0f63823
mov ecx, 0x9250844f
xor ecx, 0x6daf7bb0
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x13a6ab5a
xor r8d, 0x60196137
mov edx, eax
and edx, r8d
or eax, 0x73bfca6d
imul eax, edx
add eax, ecx
cmp eax, 0x15322e61
jbe 0x14012db06
mov rcx, qword [rbp + 8]
mov eax, dword [0x1401e2be0]
xor edx, edx
div dword [0x1401e2be4]
imul edx, eax, 0x4a7a94c0
mov eax, 0x4c50a5db
xor eax, 0xea0debad
and edx, eax
mov r8d, 0xd7032cbd
xor r8d, 0xfb96498b
mov eax, edx
and eax, r8d
xor edx, 0x2c956536
or eax, edx
mov dword [rbp - 4], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c499
mov eax, dword [rbp - 4]
add rsp, 0x20
cmp eax, 0x7ff8510b
ja 0x14012d2a6
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jmp 0x14012d8db
mov r8, qword [rbp + 8]
mov rdx, qword [rbp + 0x90]
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.140129ea2
mov rdx, qword [rbp + 0xa8]
add rsp, 0x20
mov rax, rdx
add rax, 0x108
mov qword [rbp - 0x10], rax
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
and rcx, r8
mov r8, 0xffffffffffffffff
or r8, 0xffffffffffffffff
movabs r9, 0x540d2986f53d5df6
movabs r10, 0xabf2d6790ac2a209
xor r9, r10
xor r8, r9
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
movabs r8, 0x2728858b1ba4a907
movabs r9, 0xd8d77a74e45b56f8
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
and rax, rcx
cmp rax, 0
jl 0x14012d3fc
mov rax, qword [rbp + 0xa8]
add rax, 6
mov qword [rbp - 0x20], rax
xor eax, eax
mov qword [rbp - 0x18], rax
jmp 0x14012d42a
sub rsp, 0x20
call fcn.1400067fe
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp + 0xa0]
add rsp, 0x20
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jmp 0x14012d8db
mov rcx, qword [rbp - 0x20]
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x28], rax
movzx ecx, word [rcx]
cmp rax, rcx
jae 0x14012d699
mov r8, qword [rbp + 0x100]
mov rcx, qword [rbp - 0x28]
mov edx, 0x28
sub rsp, 0x20
call fcn.1401296a5
add rsp, 0x20
test al, 1
jne 0x14012d46c
jmp 0x14012d47e
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x14012d678
mov r8, qword [rbp + 0x108]
mov rdx, qword [rbp - 0x10]
mov rax, qword [rbp + 0x100]
mov rcx, qword [rax]
mov rax, rcx
and rax, rdx
or rcx, rdx
add rax, rcx
movsxd rcx, dword [rax + 0xc]
movabs rdx, 0x5ced2dd400f2087e
movabs rax, 0x5ced2dd400f2087f
xor rdx, rax
sub rsp, 0x20
call fcn.1401296a5
add rsp, 0x20
test al, 1
jne 0x14012d4d4
jmp 0x14012d4e6
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x14012d678
mov r8, qword [rbp + 0x110]
mov rcx, qword [rbp - 0x28]
mov rdx, qword [rbp + 0x108]
mov rax, qword [rbp]
add rax, qword [rdx]
mov qword [rbp - 0x30], rax
mov edx, 0x28
sub rsp, 0x20
call fcn.1401296a5
add rsp, 0x20
test al, 1
jne 0x14012d522
jmp 0x14012d534
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x14012d678
mov r8, qword [rbp + 0x118]
mov rcx, qword [rbp + 0x110]
mov rax, qword [rbp - 0x10]
add rax, qword [rcx]
movsxd rcx, dword [rax + 0x14]
movabs rdx, 0x51ec630415decf52
movabs rax, 0x51ec630415decf53
xor rdx, rax
sub rsp, 0x20
call fcn.1401296a5
add rsp, 0x20
test al, 1
jne 0x14012d57e
jmp 0x14012d590
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x14012d678
mov r8, qword [rbp + 0x120]
mov rcx, qword [rbp - 0x28]
mov r9, qword [rbp + 0x90]
mov rax, qword [rbp + 0x118]
mov rax, qword [rax]
xor edx, edx
sub rdx, r9
sub rax, rdx
mov qword [rbp - 0x38], rax
mov edx, 0x28
sub rsp, 0x20
call fcn.1401296a5
add rsp, 0x20
test al, 1
jne 0x14012d5d7
jmp 0x14012d5e9
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x14012d678
mov rdx, qword [rbp - 0x10]
mov rax, qword [rbp + 0x120]
mov rax, qword [rax]
xor ecx, ecx
sub rcx, rdx
sub rax, rcx
mov eax, dword [rax + 0x10]
mov dword [rbp - 0x3c], eax
cmp eax, 0
jge 0x14012d634
mov eax, dword [rbp - 0x3c]
movsxd rcx, eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c499
add rsp, 0x20
jmp 0x14012d678
mov rdx, qword [rbp - 0x38]
mov rcx, qword [rbp - 0x30]
mov eax, dword [rbp - 0x3c]
mov eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.140129ea2
mov rax, qword [rbp - 0x28]
add rsp, 0x20
movabs rcx, 0xb65d9f8b948772f6
movabs rdx, 0xb65d9f8b948772f7
xor rcx, rdx
add rax, rcx
mov qword [rbp - 0x18], rax
jmp 0x14012d42a
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jmp 0x14012d8db
mov rdx, qword [rbp + 0x130]
mov rcx, qword [rbp]
mov rax, qword [rbp + 0x160]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140129f20
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
mov rax, qword [rbp + 0xa0]
mov dl, byte [rdx]
mov r8b, 0x35
xor r8b, 0x35
cmp dl, r8b
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jne 0x14012d8db
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.14012ba80
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp + 0xa0]
add rsp, 0x20
cmp byte [rdx], 0
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jne 0x14012d8db
mov rax, qword [rbp]
mov rcx, qword [rbp + 0x40]
cmp rax, rcx
je 0x14012d7d7
mov r8, qword [rbp]
mov rdx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x50]
movsxd r9, dword [rax]
sub rsp, 0x20
mov rcx, r8
call fcn.14012bdb0
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x148]
mov al, byte [rax]
xor edx, edx
test cl, cl
mov ecx, 0xe
cmovne ecx, edx
test al, al
mov eax, 2
cmove eax, ecx
mov dword [rbp - 0x40], eax
test eax, eax
je 0x14012d7d7
jmp 0x14012d799
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rbp + 0x98]
mov edx, dword [rbp - 0x40]
sub edx, 2
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
je 0x14012d8db
jmp 0x14012d7c6
mov eax, dword [rbp - 0x40]
sub eax, 0xe
jne 0x14012dadf
jmp 0x14012d7d7
mov r8, qword [rbp]
mov rax, qword [rbp + 0xa8]
movsxd rdx, dword [rax + 0x28]
mov rcx, rdx
add rcx, r8
mov qword [rbp - 0x48], rcx
mov rax, rcx
xor rax, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x14012d834
sub rsp, 0x20
call fcn.1400067fe
mov rcx, qword [rbp + 0x98]
mov rax, qword [rbp + 0xa0]
add rsp, 0x20
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jmp 0x14012d8db
mov r8, qword [rbp - 0x48]
xor eax, eax
mov r9d, eax
xor eax, eax
sub rsp, 0x30
mov rcx, r9
mov rdx, r9
mov dword [rsp + 0x20], 0
mov qword [rsp + 0x28], 0
call fcn.1400a7866
mov rdx, qword [rbp + 0x148]
mov rcx, qword [rbp + 0x98]
add rsp, 0x30
mov r8, rax
mov rax, qword [rbp + 0xa0]
mov qword [rbp - 0x50], r8
mov dl, byte [rdx]
mov r8b, 0x81
xor r8b, 0x81
cmp dl, r8b
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
jne 0x14012d8db
mov rcx, qword [rbp - 0x50]
mov rax, qword [0x1401f0bd8]
mov rax, qword [rax]
mov dl, 0xca
xor dl, 0xcb
xor r8d, r8d
sub rsp, 0x20
call rax
mov rcx, qword [rbp + 0x98]
add rsp, 0x20
mov rax, qword [rbp + 0xa0]
mov qword [rbp + 0xd0], rcx
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0x160]
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
mov qword [rbp - 0x68], rdx
mov qword [rbp - 0x60], rcx
mov rax, qword [rax + 8]
mov qword [rbp - 0x58], rax
cmp rax, 0
je 0x14012d989
mov rax, qword [rbp - 0x58]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
movabs rcx, 0xdddd1d4ad4eeaac8
movabs rdx, 0x9ddd1d4ad4eeaac8
xor rcx, rdx
movabs rdx, 0x14b05c6e1ad4322
movabs r8, 0x414b05c6e1ad4322
xor rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs rdx, 0x8123717471627ac3
movabs r8, 0x7edc8e8b8e9d853c
xor rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14012d989
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x168]
mov rax, qword [rax + 8]
mov qword [rbp - 0x70], rax
cmp rax, 0
je 0x14012dab7
mov rax, qword [rbp - 0x70]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0x6e28f2c2330f6b4b
movabs rdx, 0x6e28f2c2330f6b4b
xor rcx, rdx
cmp rax, rcx
jne 0x14012dab7
mov ecx, dword [0x1401e2be8]
mov eax, dword [0x1401e2bec]
xor eax, 0x90ff2d56
add ecx, eax
mov eax, ecx
or eax, eax
mov edx, 0x76eb1e64
xor edx, 0x8914e19b
xor eax, edx
mov edx, 0x73eb8ed4
xor edx, 0xf5c51d17
mov r8d, 0x73dfcc1d
xor r8d, 0xf5f15fde
or edx, r8d
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, 0x862e93c3
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
xor eax, 0x356a9585
mov ecx, 0xa8f9684
xor edx, edx
div ecx
cmp eax, 0xa66c8d2
ja 0x14012db0f
mov rcx, qword [rbp - 0x70]
mov eax, dword [0x1401e2bf0]
mov edx, dword [0x1401e2bf4]
xor edx, 0x1d59ad7f
or eax, edx
add eax, 0x554d6ee7
mov edx, 0xf67de0d8
xor edx, 0x88048d54
imul eax, edx
mov r8d, 0xc0aa12da
xor edx, edx
div r8d
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.14000e27f
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp eax, 0xab24c2f4
je 0x14012db0f
jmp 0x14012dab7
mov rcx, qword [rbp + 0x138]
mov rax, qword [rbp - 0x68]
mov rdx, qword [rbp - 0x60]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140025a20
add rsp, 0x20
xor eax, eax
mov byte [rbp + 0x7f], al
mov al, byte [rbp + 0x7f]
lea rsp, [rbp + 0x170]
pop rbp
ret
lodsd eax, dword [rsi]
adc al, ah
xchg cl, ch
mov cl, 0xec
invalid
pop rsp
test eax, 0x1e98b0a
invalid
stosd dword [rdi], eax
invalid
cmpsb byte [rsi], byte [rdi]
xor esi, dword [rcx + 0x75]
jmp 0x14012d2a6
cmp ecx, dword [rbx + rdi*2 - 0xb916f7]
invalid