Function at 0x140162190
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x268
lea rbp, [rsp + 0x80]
mov qword [rbp + 0xa0], rcx
mov eax, 0x10
mov qword [rbp + 0xc0], rax
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xc0]
mov rcx, rsp
mov qword [rbp + 0xa8], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xc0]
mov rcx, rsp
mov qword [rbp + 0xb0], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xc0]
mov rcx, rsp
mov qword [rbp + 0xb8], rcx
call fcn.140215890
sub rsp, rax
mov rax, qword [rbp + 0xc0]
mov rcx, rsp
mov qword [rbp + 0xc8], rcx
call fcn.140215890
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0xd0], rax
sub rsp, 0x20
call fcn.14018af70
add rsp, 0x20
add rax, 0x50
mov qword [rbp + 0xd8], rax
mov rax, qword [0x14029fdb0]
mov qword [rbp + 0xe0], rax
mov al, byte [rax]
mov cl, 0xf8
xor cl, 0xf8
cmp al, cl
je 0x1401623c1
mov eax, dword [0x1402204c8]
xor edx, edx
div dword [0x1402204cc]
mov ecx, eax
or ecx, 0xdf99bdc4
mov eax, 0x82d78916
xor eax, 0x1c0a0f36
or ecx, eax
mov eax, ecx
and eax, 0x123eff0
mov edx, 0x3f7e1152
xor edx, 0xc081eead
xor eax, edx
mov edx, 0x325eca6c
xor edx, 0x337d259c
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x1f040418
xor ecx, 0x63ea3779
cmp eax, ecx
ja 0x140163727
mov eax, dword [0x1402204d0]
xor eax, 0xcfe9fbf6
xor edx, edx
div dword [0x1402204d4]
mov ecx, eax
sub ecx, 0x7759e0
mov edx, 0xe8e8e521
xor edx, 0xf4dbab8
mov eax, 0xe4739171
xor eax, 0x1b8c6e8e
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
add eax, 0xa5b806af
add eax, 0xd8a6c45
sub eax, 0xa5b806af
mov dword [rbp + 0x9c], eax
movabs rcx, 0x4d13e1c575f1bb3b
movabs rax, 0x4d13e1c575f1bb7b
xor rcx, rax
movabs rdx, 0x406e327d6a9de214
movabs rax, 0x406e327d6a9de21c
xor rdx, rax
sub rsp, 0x20
call fcn.140015160
add rsp, 0x20
mov rcx, rax
mov rax, qword [str.pf__]
mov qword [rcx], rax
lea rax, [0x14022d080]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14022d168]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14022d170]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14022d080]
lea r8, [0x14022d08f]
lea r9, [0x14022d09b]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x5038b044
call fcn.140014c00
mov eax, dword [rbp + 0x9c]
add rsp, 0x30
cmp eax, 0xb6a62898
jbe 0x1401622c2
jmp 0x14016371b
mov rax, qword [rbp + 0xe0]
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x90], rcx
mov rax, qword [rax + 8]
movabs rcx, 0x796cf5c0b6f4868b
movabs rdx, 0x796cf5c0b6f4868b
xor rcx, rdx
cmp rax, rcx
je 0x1401624b2
mov rcx, qword [rbp + 0x90]
sub rsp, 0x20
call fcn.14018b060
add rsp, 0x20
mov rax, qword [0x14029fdb0]
mov qword [rbp + 0x80], rax
mov rax, qword [rax + 8]
mov qword [rbp + 0x88], rax
movabs rcx, 0x2c6e48f8dfd1c76b
movabs rdx, 0x2c6e48f8dfd1c76a
xor rcx, rdx
cmp rax, rcx
jge 0x140162468
mov rdx, qword [rbp + 0x88]
add rdx, 0xffffffffffffffff
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x14016371b
mov rdx, qword [rbp + 0x88]
mov rax, qword [rbp + 0x80]
mov rcx, qword [rax + 0x10]
add rcx, 8
movabs r8, 0x5aa6e561d6132cde
movabs rax, 0x731f71369e617bf7
xor r8, rax
sub rsp, 0x20
call fcn.1400a2ce0
mov rax, qword [rbp + 0xd8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14016371b
mov rcx, qword [rbp + 0xb0]
mov qword [rbp + 0x1d8], 0
mov rax, qword [0x14022d188]
mov qword [rcx], rax
mov rax, qword [0x14022d190]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140037cc7
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov qword [rbp + 0x70], rax
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov ecx, 8
mov edx, 4
sub rsp, 0x20
call fcn.140015160
add rsp, 0x20
mov rdx, rax
mov qword [rbp + 0x58], rdx
mov dword [rdx + 4], 0
lea rcx, [rbp + 0x1c8]
sub rsp, 0x20
call fcn.140075190
mov rax, qword [rbp + 0xd8]
add rsp, 0x20
mov rcx, qword [rbp + 0x1c8]
mov qword [rbp + 0x60], rcx
mov rcx, qword [rbp + 0x1d0]
mov qword [rbp + 0x68], rcx
mov al, byte [rax]
mov cl, 0x7d
xor cl, 0x7d
cmp al, cl
jne 0x140162664
mov rax, qword [rbp + 0x60]
add rax, 0xffffffff80000000
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x1401625a5
mov rcx, qword [rbp + 0x60]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
sub rsp, 0x20
call fcn.14000e6db
add rsp, 0x20
jmp 0x140162664
mov rax, qword [rbp + 0x60]
cmp rax, 1
jge 0x1401625d1
mov rdx, qword [rbp + 0x60]
add rdx, 0xffffffffffffffff
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x140162664
mov rcx, qword [rbp + 0x70]
mov r11, qword [rbp + 0x68]
mov rax, qword [rbp + 0x60]
mov r10d, eax
add r11, 8
mov rax, qword [0x14022dd08]
mov rdx, qword [rax + 8]
mov rsi, rdx
add rsi, 8
xor eax, eax
cmp rdx, 0
cmove rsi, rax
mov rax, qword [0x14022dd08]
mov rdi, qword [rax]
mov edx, 0x2823b037
xor edx, 0xd7dc4fca
mov r8d, 0x1601091a
xor r8d, 0x1601091a
mov r9d, 0xfaa86bfb
xor r9d, 0xfaa86bfb
mov bl, 1
xor bl, 1
xor eax, eax
sub rsp, 0x50
and bl, 1
mov rax, rsp
mov byte [rax + 0x48], bl
mov qword [rax + 0x40], rdi
mov qword [rax + 0x38], rsi
mov qword [rax + 0x30], r11
mov dword [rax + 0x20], r10d
mov qword [rax + 0x28], 0
call fcn.1400a4260
add rsp, 0x50
mov rcx, qword [rbp + 0x58]
sub rsp, 0x20
call fcn.1400905a0
mov rax, qword [rbp + 0x68]
add rsp, 0x20
cmp rax, 0
je 0x140162705
mov rax, qword [rbp + 0x68]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
movabs rcx, 0x925423e31fae8a61
movabs r8, 0xf0fec99778864df2
xor rcx, r8
movabs r8, 0xd9e053d89c364919
movabs r9, 0x261fac2763c9b6e6
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x62aaea746728c793
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x140162705
mov rcx, qword [rbp + 0x68]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov rcx, qword [rbp + 0xd8]
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov ecx, 0x58
mov edx, 8
sub rsp, 0x20
call fcn.140015160
add rsp, 0x20
mov qword [rbp + 0x38], rax
mov rcx, qword [0x14022d168]
mov qword [rax + 8], rcx
mov rcx, qword [0x14022d170]
mov qword [rax + 0x10], rcx
mov rcx, qword [0x14022d168]
mov qword [rax + 0x18], rcx
mov rcx, qword [0x14022d170]
mov qword [rax + 0x20], rcx
mov rcx, qword [0x14022d168]
mov qword [rax + 0x28], rcx
mov rcx, qword [0x14022d170]
mov qword [rax + 0x30], rcx
mov cx, 0x53ef
xor cx, 0x562b
sub rsp, 0x20
call fcn.14006e0a0
mov rdx, qword [rbp + 0xd8]
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x38]
mov dword [rax + 0x38], ecx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x47], cl
mov rcx, rax
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x50], rax
jne 0x140162aae
mov cx, 0xcaf7
xor cx, 0xce5c
sub rsp, 0x20
call fcn.14006e400
mov rdx, qword [rbp + 0xd8]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x38]
mov qword [rax + 0x40], rcx
mov cl, 1
xor eax, eax
cmp byte [rdx], 0
mov byte [rbp + 0x47], cl
mov rcx, rax
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x50], rax
jne 0x140162aae
mov rdx, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xa0]
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x1b8]
sub rsp, 0x20
call fcn.14001fd14
mov rdx, qword [rbp + 0x38]
add rsp, 0x20
mov rcx, qword [rbp + 0x1b8]
mov rax, qword [rbp + 0x1c0]
mov qword [rdx + 0x48], rcx
mov qword [rdx + 0x50], rax
lea rcx, [rbp + 0x1a8]
sub rsp, 0x20
call fcn.1400767b0
mov r8, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov rcx, qword [rbp + 0x1a8]
mov qword [rbp + 0x28], rcx
mov rcx, qword [rbp + 0x1b0]
mov qword [rbp + 0x30], rcx
mov dl, 1
cmp byte [r8], 0
mov byte [rbp + 0x47], dl
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x50], rax
jne 0x140162aae
mov rax, qword [rbp + 0x28]
mov rcx, 0xffffffffffffffff
xor rcx, 0xffffffff80000000
movabs rdx, 0xed64a703b026db93
movabs r8, 0xed64a703b026db93
xor rdx, r8
movabs r8, 0x8dbfd3132bca38c1
movabs r9, 0x8dbfd3132bca38c0
xor r8, r9
sub rdx, r8
sub rcx, rdx
sub rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x140162932
mov rcx, qword [rbp + 0x28]
movabs rdx, 0x73919b7d9aff7aa1
movabs rax, 0x8c6e64821aff7aa1
xor rdx, rax
movabs r8, 0x1f712f8ad14460ad
movabs rax, 0x1f712f8aaebb9f52
xor r8, rax
sub rsp, 0x20
call fcn.14000e6db
add rsp, 0x20
jmp 0x1401629f9
mov rax, qword [rbp + 0x28]
cmp rax, 1
jge 0x140162982
mov rcx, qword [rbp + 0x28]
xor eax, eax
sub rax, rcx
xor ecx, ecx
sub rcx, 0xffffffffffffffff
add rax, rcx
movabs rdx, 0x861ec8046c23ff3b
movabs rcx, 0x861ec8046c23ff3b
xor rdx, rcx
sub rdx, rax
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x1401629f9
mov rcx, qword [rbp + 0x70]
mov r11, qword [rbp + 0x30]
mov rax, qword [rbp + 0x28]
mov esi, eax
add r11, 8
mov rax, qword [0x14022dd08]
mov rdx, qword [rax + 8]
mov r10, rdx
add r10, 8
xor eax, eax
cmp rdx, 0
cmove r10, rax
mov rax, qword [0x14022dd08]
mov rax, qword [rax]
mov edx, 0xfffffffe
xor r9d, r9d
xor r8d, r8d
sub rsp, 0x50
mov r8d, r9d
mov dword [rsp + 0x20], esi
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x48], 0
call fcn.1400a4260
add rsp, 0x50
mov eax, dword [0x1402204d8]
mov ecx, dword [0x1402204dc]
xor ecx, 0xd74f951b
xor edx, edx
div ecx
sub eax, 0x4af90523
add eax, 0x444fe85b
add eax, 0x4af90523
xor eax, 0xe7fa7928
mov edx, 0xb3db1663
xor edx, 0xd5bcc5a5
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
mov edx, 0x6687530f
xor edx, 0xe080c9
or eax, edx
and eax, ecx
cmp eax, 0xa805a003
je 0x140163730
mov rcx, qword [rbp + 0xd8]
mov eax, dword [0x1402204e0]
and eax, dword [0x1402204e4]
mov r8d, 0xa33462b1
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
and eax, 0xff40c1b6
or edx, 0xff40c1b6
add eax, edx
or eax, 0xb596fc1b
mov cl, byte [rcx]
mov byte [rbp + 0x27], cl
cmp eax, 0x960b6e7
je 0x140162a4f
mov rax, qword [rbp + 0x38]
mov rcx, qword [rbp + 0x30]
mov dl, byte [rbp + 0x27]
mov byte [rbp + 0x47], dl
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x50], rax
jmp 0x140162aae
mov rax, qword [rbp + 0xd8]
mov dl, byte [rbp + 0x47]
mov r8, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x50]
mov qword [rbp + 0x18], r8
mov byte [rbp + 0x25], dl
mov r8b, 0x7a
xor r8b, 0x7a
cmp dl, r8b
sete dl
mov byte [rbp + 0x26], dl
mov dl, 0xc5
xor dl, 0xc5
mov byte [rax], dl
sub rsp, 0x20
call fcn.140090f50
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov rax, qword [rbp + 0x18]
cmp rax, 0
je 0x140162b78
mov rax, qword [rbp + 0x18]
mov rax, qword [rax]
movabs rdx, 0xaeb805825a36003e
movabs rcx, 0xeeb805825a36003e
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xa8c5f750e2589782
movabs r8, 0x573a08af1da7687d
xor rdx, r8
xor rcx, rdx
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140162b78
mov rcx, qword [rbp + 0x18]
sub rsp, 0x20
call fcn.140010918
add rsp, 0x20
mov cl, byte [rbp + 0x26]
mov rax, qword [rbp + 0xd8]
mov dl, byte [rbp + 0x25]
mov byte [rax], dl
xor eax, eax
test cl, 1
mov qword [rbp + 0x78], rax
jne 0x140162b9b
jmp 0x140163496
mov rcx, qword [rbp + 0x70]
mov rax, qword [0x14022dd08]
mov rdx, qword [rax + 8]
mov r11, rdx
add r11, 8
xor eax, eax
cmp rdx, 0
cmove r11, rax
mov rax, qword [0x14022dd08]
mov rsi, qword [rax]
mov edx, 0x1d13377d
xor edx, 0xe2ecc882
mov r8d, 0x9c078790
xor r8d, 0x63f8786f
mov r9d, 0x451fc658
xor r9d, 0xbae039a7
mov r10d, 0xe1b07da9
xor r10d, 0x1e4f8256
mov bl, 1
xor bl, 1
xor eax, eax
sub rsp, 0x50
and bl, 1
mov rax, rsp
mov byte [rax + 0x48], bl
mov qword [rax + 0x40], rsi
mov qword [rax + 0x38], r11
mov dword [rax + 0x20], r10d
mov qword [rax + 0x30], 0
mov qword [rax + 0x28], 0
call fcn.1400a4260
mov rcx, qword [rbp + 0xd8]
add rsp, 0x50
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov rax, qword [rbp + 0x70]
mov rcx, qword [rax + 0x58]
mov qword [rbp + 0x188], rcx
mov rax, qword [rax + 0x60]
mov qword [rbp + 0x190], rax
lea rcx, [rbp + 0x198]
lea rdx, [rbp + 0x188]
sub rsp, 0x20
call fcn.14001fd14
mov rcx, qword [rbp + 0xc8]
add rsp, 0x20
mov rdx, qword [rbp + 0x198]
mov rax, qword [rbp + 0x1a0]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401603c0
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov qword [rbp + 0x10], rax
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rax + 0x28]
mov qword [rdx], rcx
mov rax, qword [rax + 0x30]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x178]
sub rsp, 0x20
call fcn.14001fd14
add rsp, 0x20
mov rcx, qword [rbp + 0x178]
mov rax, qword [rbp + 0x180]
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
lea rcx, [rbp + 0x168]
sub rsp, 0x20
call fcn.140037cc7
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x10]
mov qword [rbp + 0x1d8], rdx
mov cl, byte [rcx]
mov dl, 0xc9
xor dl, 0xc9
cmp cl, dl
mov qword [rbp + 0x78], rax
jne 0x140163496
mov rax, qword [rbp + 0x10]
mov rcx, qword [rax]
mov qword [rbp + 0x148], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x150], rax
mov rax, qword [0x14022d0a8]
mov qword [rbp + 0x138], rax
mov rax, qword [0x14022d0b0]
mov qword [rbp + 0x140], rax
lea rcx, [rbp + 0x158]
lea rdx, [rbp + 0x148]
lea r8, [rbp + 0x138]
sub rsp, 0x20
call fcn.140107400
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
mov rdx, qword [rbp + 0x158]
mov qword [rbp], rdx
mov rdx, qword [rbp + 0x160]
mov qword [rbp + 8], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov rax, qword [rbp + 8]
mov rdx, qword [rbp]
mov rcx, qword [0x14029fdb0]
add rcx, 0x18
mov qword [rbp + 0x128], rdx
mov qword [rbp + 0x130], rax
lea rdx, [rbp + 0x128]
sub rsp, 0x20
call fcn.140016d10
add rsp, 0x20
mov rax, qword [0x14029fdb0]
mov byte [rax], 1
lea rax, [rbp + 0x118]
add rax, 8
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0xf8]
add rax, 8
mov qword [rbp - 8], rax
mov rax, qword [0x14022dd08]
mov rcx, qword [rax + 8]
mov rdx, rcx
add rdx, 8
xor eax, eax
cmp rcx, 0
cmove rdx, rax
mov rax, qword [0x14022dd08]
mov r8, qword [rax]
lea rcx, [rbp + 0x1d8]
sub rsp, 0x20
call fcn.1400a4d30
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0xd8]
mov qword [rbp - 0x20], rcx
mov dl, byte [rax]
mov r8b, 0x45
xor r8b, 0x45
xor eax, eax
mov cl, al
mov al, 1
cmp dl, r8b
mov byte [rbp - 0x12], cl
mov byte [rbp - 0x11], al
jne 0x1401631c8
mov rax, qword [rbp - 0x20]
cmp rax, 0
jne 0x140162ecc
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.14008f500
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xf3
xor dl, 0xf3
cmp cl, dl
mov qword [rbp + 0x78], rax
je 0x140163369
jmp 0x140163496
mov rax, qword [rbp - 0x20]
mov eax, dword [rax]
mov ecx, 0x1b9d4e07
xor ecx, 0x34360b76
cmp eax, ecx
jne 0x140163086
mov eax, dword [0x1402204e8]
mov edx, dword [0x1402204ec]
mov r8d, eax
xor r8d, edx
mov ecx, 0xd9980f7
xor ecx, 0xf2667f08
xor r8d, ecx
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
add eax, 0x95602885
and eax, 0xb43be478
add eax, 0xa71b083a
cmp eax, 0x59788ae1
jb 0x140163739
mov eax, dword [0x1402204f0]
mov ecx, dword [0x1402204f4]
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8f24d580
or eax, ecx
mov ecx, 0x38de84ce
xor ecx, 0xb7fa514e
or ecx, edx
mov edx, 0xb336cb0b
xor edx, 0x4cc934f4
xor eax, edx
and eax, ecx
sub eax, 0xc0a557a8
sub eax, 0xdd03c4c0
add eax, 0xc0a557a8
xor eax, 0x5411ad7e
imul eax, eax, 0xd21b7191
mov dword [rbp - 0x28], eax
sub rsp, 0x20
call fcn.14006ea40
mov rcx, qword [rbp + 0xd8]
mov eax, dword [rbp - 0x28]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x94
xor dl, 0x94
cmp cl, dl
sete cl
mov byte [rbp - 0x21], cl
cmp eax, 0x8b0edeb2
je 0x140163739
mov dl, byte [rbp - 0x21]
xor eax, eax
mov cl, al
mov al, 1
test dl, 1
mov byte [rbp - 0x12], cl
mov byte [rbp - 0x11], al
jne 0x140162fd1
jmp 0x1401631c8
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x108], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0x110], rax
lea rcx, [rbp + 0x118]
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.14001fd14
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov rdx, qword [rbp + 0x118]
mov rcx, qword [rcx]
mov qword [rbp + 0xf8], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0xf8]
sub rsp, 0x20
call fcn.14006eaa0
mov rdx, qword [rbp + 0xd8]
add rsp, 0x20
xor eax, eax
mov cl, al
mov al, 1
cmp byte [rdx], 0
mov byte [rbp - 0x12], cl
mov byte [rbp - 0x11], al
jne 0x1401631c8
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.14008f500
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x99
xor dl, 0x99
cmp cl, dl
mov qword [rbp + 0x78], rax
je 0x140163230
jmp 0x140163496
mov ecx, 0x2da
sub rsp, 0x20
call fcn.14006e0a0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0xd8]
mov dword [rbp - 0x2c], ecx
mov dl, byte [rax]
mov r8b, 0xa4
xor r8b, 0xa4
xor eax, eax
mov cl, al
mov al, 1
cmp dl, r8b
mov byte [rbp - 0x12], cl
mov byte [rbp - 0x11], al
jne 0x1401631c8
mov rdx, qword [rbp - 0x20]
mov r8d, dword [rbp - 0x2c]
mov cl, 1
xor eax, eax
cmp dword [rdx], r8d
mov byte [rbp - 0x12], cl
mov byte [rbp - 0x11], al
jne 0x1401631c8
mov rax, qword [rbp - 0x20]
mov rcx, qword [rax + 8]
mov qword [rbp + 0xe8], rcx
mov rax, qword [rax + 0x10]
mov qword [rbp + 0xf0], rax
sub rsp, 0x20
call fcn.14018af70
mov rcx, qword [rbp + 0xa8]
add rsp, 0x20
mov qword [rbp + 0x1e0], 0
mov rax, qword [rbp + 0xe8]
mov qword [rcx], rax
mov rax, qword [rbp + 0xf0]
mov qword [rcx + 8], rax
lea rdx, [rbp + 0x1e0]
sub rsp, 0x20
call fcn.14007f60b
mov rdx, qword [rbp + 0xd8]
add rsp, 0x20
mov rax, qword [rbp + 0x1e0]
mov qword [rbp - 0x38], rax
xor eax, eax
mov cl, al
mov al, 1
cmp byte [rdx], 0
mov byte [rbp - 0x12], cl
mov byte [rbp - 0x11], al
jne 0x1401631c8
mov rdx, qword [rbp - 0x38]
lea rcx, [0x14029fdb8]
sub rsp, 0x20
call fcn.140106310
mov rdx, qword [rbp + 0xd8]
add rsp, 0x20
xor eax, eax
mov cl, al
mov al, 1
cmp byte [rdx], 0
mov byte [rbp - 0x12], cl
mov byte [rbp - 0x11], al
jne 0x1401631c8
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call fcn.14008f500
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
je 0x140163230
jmp 0x140163496
mov rax, qword [rbp + 0xd8]
mov rcx, qword [rbp - 0x20]
mov dl, byte [rbp - 0x12]
mov r8b, byte [rbp - 0x11]
mov byte [rbp - 0x3a], r8b
mov byte [rbp - 0x39], dl
mov byte [rax], 0
sub rsp, 0x20
call fcn.14008f500
mov rcx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x10]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov rax, qword [rbp + 0x10]
mov cl, byte [rbp - 0x39]
mov rdx, qword [rbp + 0xd8]
mov r8b, byte [rbp - 0x3a]
mov byte [rdx], r8b
test cl, 1
mov qword [rbp + 0x78], rax
jne 0x140163230
jmp 0x140163496
mov eax, dword [0x1402204f8]
xor eax, 0xa7ef7492
mov edx, dword [0x1402204fc]
xor edx, 0xbe4142cd
mov r8d, 0x4f032789
xor r8d, 0x4f032788
mov ecx, eax
add ecx, r8d
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x3aef3d4f
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x9a9240ef
xor r8d, 0x656dbf10
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x3aef3d4f
or eax, 0x3aef3d4f
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x6ef8e0e0
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x6ef8e0e0
or eax, 0x6ef8e0e0
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xba9b6b33
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xab61576b
xor r8d, 0x11fa3c58
mov edx, eax
and edx, r8d
or eax, 0xba9b6b33
imul eax, edx
add eax, ecx
cmp eax, 0x1cdab7be
jbe 0x140163742
mov eax, dword [0x140220500]
mov r8d, dword [0x140220504]
mov ecx, 0x8c06f30e
xor ecx, 0x73f90cf1
mov r9d, r8d
xor r9d, ecx
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
or eax, 0x64e9807c
sub eax, 0xc237e6bd
add eax, 0xea9fab12
cmp eax, 0xdb7400ac
ja 0x14016330f
jmp 0x140162e24
cmp qword [0x14029fdb8], 0
jne 0x1401633fc
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140015160
add rsp, 0x20
mov rcx, rax
mov rax, qword [str.pf__]
mov qword [rcx], rax
lea rax, [0x14022d080]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14022d168]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14022d170]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14022d080]
lea r8, [0x14022d08f]
lea r9, [0x14022d09b]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x6462a661
call fcn.140014c00
mov rax, qword [rbp + 0x10]
add rsp, 0x30
mov qword [rbp + 0x78], rax
jmp 0x140163496
mov rax, qword [rbp + 0x10]
mov rcx, qword [0x14029fdb0]
cmp qword [rcx + 0x18], 0
mov qword [rbp + 0x78], rax
jne 0x140163496
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140015160
add rsp, 0x20
mov rcx, rax
mov rax, qword [str.pf__]
mov qword [rcx], rax
lea rax, [0x14022d080]
mov qword [rcx + 0x10], rax
mov rax, qword [0x14022d168]
mov qword [rcx + 0x18], rax
mov rax, qword [0x14022d170]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x14022d080]
lea r8, [0x14022d08f]
lea r9, [0x14022d09b]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffb5ecebe8
call fcn.140014c00
mov rax, qword [rbp + 0x10]
add rsp, 0x30
mov qword [rbp + 0x78], rax
mov rax, qword [rbp + 0xd8]
mov rcx, qword [rbp + 0x78]
mov qword [rbp - 0x48], rcx
mov cl, byte [rax]
mov byte [rbp - 0x3c], cl
mov byte [rax], 0
mov rcx, qword [rbp + 0x1d8]
sub rsp, 0x20
call fcn.1400360c0
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x3b], al
jne 0x140163534
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.140115860
mov rcx, qword [rbp + 0xd8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp - 0x3b], al
jne 0x140163534
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.1400360c0
mov rcx, qword [rbp + 0xd8]
mov al, byte [rbp - 0x3c]
add rsp, 0x20
mov dl, 1
mov byte [rbp - 0x4a], dl
cmp byte [rcx], 0
mov byte [rbp - 0x49], al
je 0x14016352e
mov al, byte [rbp - 0x4a]
mov byte [rbp - 0x49], al
mov al, byte [rbp - 0x49]
mov byte [rbp - 0x3b], al
mov rax, qword [rbp + 0xd8]
mov cl, byte [rbp - 0x3b]
mov byte [rbp - 0x59], cl
mov byte [rax], 0
mov rax, qword [0x14029fdb0]
mov rcx, rax
add rcx, 8
mov qword [rbp - 0x58], rcx
cmp qword [rax + 8], 0
je 0x14016370f
mov eax, dword [0x140220508]
xor eax, 0x676fe11f
mov ecx, dword [0x14022050c]
mov edx, 0x20b2c249
xor edx, 0x9fc893ff
add eax, edx
add eax, ecx
mov ecx, 0x96c9e39b
xor ecx, 0x29b3b22d
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xc6b3ef34
mov edx, 0x7e3103e7
xor edx, 0x7e3103e7
mov r8d, 0x3cc24c91
xor r8d, 0x3cc24c90
sub edx, r8d
sub ecx, edx
sub eax, ecx
add eax, 0x9ccddd18
or eax, eax
xor eax, 0xffffffff
mov ecx, 0xfc548f7b
or ecx, 0xfc548f7b
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x2525cc53
je 0x14016374b
mov rcx, qword [rbp - 0x58]
mov eax, dword [0x140220510]
mov r8d, dword [0x140220514]
xor r8d, 0x2cacc414
xor r8d, 0xffffffff
mov edx, eax
xor edx, r8d
and edx, eax
and edx, 0x55ec030d
and edx, 0x893dd9da
mov eax, edx
and eax, eax
xor eax, 0xffffffff
and eax, 0x2ad5b77d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x2ad5b77d
mov r9d, 0xffffffff
xor r9d, 0x2ad5b77d
or r8d, r9d
and edx, r8d
xor edx, 0xffffffff
and eax, edx
xor eax, 0xffffffff
mov dword [rbp - 0x74], eax
mov eax, 0x4a9de8cc
xor eax, 0x3081d672
mov dword [rbp - 0x78], eax
sub rsp, 0x20
call fcn.14018b060
mov ecx, dword [rbp - 0x78]
mov eax, dword [rbp - 0x74]
add rsp, 0x20
mov rdx, qword [0x14029fdb0]
mov qword [rbp - 0x70], rdx
mov rdx, qword [rdx + 8]
mov qword [rbp - 0x68], rdx
cmp rdx, 1
setl dl
mov byte [rbp - 0x5a], dl
cmp eax, ecx
ja 0x1401635e0
mov al, byte [rbp - 0x5a]
test al, 1
jne 0x14016369e
jmp 0x1401636d2
mov rdx, qword [rbp - 0x68]
movabs rax, 0x35ba254f0d0e975
movabs rcx, 0xfca45dab0f2f168a
xor rax, rcx
add rdx, rax
xor eax, eax
mov ecx, eax
sub rsp, 0x20
call fcn.1400153d3
add rsp, 0x20
jmp 0x14016371b
mov rdx, qword [rbp - 0x68]
mov rax, qword [rbp - 0x70]
mov rcx, qword [rax + 0x10]
add rcx, 8
movabs r8, 0x29b96b4c48525729
sub rsp, 0x20
call fcn.1400a2ce0
mov rax, qword [rbp + 0xd8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x63
xor cl, 0x63
cmp al, cl
jne 0x14016371b
mov rax, qword [rbp + 0xd8]
mov cl, byte [rbp - 0x59]
mov byte [rax], cl
lea rsp, [rbp + 0x1e8]
pop rbx
pop rdi
pop rsi
pop rbp
ret
jbe 0x14016372b
sub byte [rbp - 0x146d17], dl
push rdi
imul esp, dword [rax + 8], 0xfff316e9
push rax
sbb al, 0xac
out dx, eax
jmp 0x140162f2b
jmp 0x1401622c2
imul dword [rcx + 0x60]
or cl, ch
invalid
invalid
outsd dx, dword [rsi]
xchg byte [rdi - 0x43b1686], cl
invalid
movsd dword [rdi], dword [rsi]
call qword [rdi]
adc eax, 0xfffe8ce9
jmp qword [rsi + 0x66]