Function at 0x1401e3050
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x3b8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x158], rcx
mov eax, 0x10
mov qword [rbp + 0x1a8], rax
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x160], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x168], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x170], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x178], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x180], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x188], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x190], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x198], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x1a0], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, qword [rbp + 0x1a8]
mov rcx, rsp
mov qword [rbp + 0x1b0], rcx
call fcn.1401f0aa0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1b8], rax
sub rsp, 0x20
call fcn.1401e5d00
add rsp, 0x20
mov qword [rbp + 0x1d0], rax
add rax, 0x60
mov qword [rbp + 0x1c0], rax
mov ecx, 4
mov edx, 0x10
mov r8d, 8
sub rsp, 0x20
call fcn.140012e10
add rsp, 0x20
mov qword [rbp + 0x1c8], rax
mov word [rbp + 0x336], 0x9d6
lea rcx, [rbp + 0x336]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1d0]
mov qword [rbp + 0x1d8], rcx
cmp byte [rax + 0x60], 0
jne 0x1401e41ea
mov rcx, qword [rbp + 0x170]
mov r8, qword [rbp + 0x178]
mov rax, qword [rbp + 0x1d8]
mov rdx, qword [0x140208988]
mov r9, qword [rdx]
mov qword [rbp + 0x320], r9
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x328], rdx
mov rdx, qword [rax]
mov qword [r8], rdx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rdx, [rbp + 0x320]
sub rsp, 0x20
call fcn.1401df077
mov rcx, qword [rbp + 0x170]
mov rax, qword [rbp + 0x1c0]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x148], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x150], rcx
cmp byte [rax], 0
jne 0x1401e41ea
mov rax, qword [rbp + 0x1c8]
mov rcx, qword [rbp + 0x150]
mov rdx, qword [rbp + 0x148]
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rcx
mov word [rbp + 0x334], 0xb2f
lea rcx, [rbp + 0x334]
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0x140], rcx
mov al, byte [rax]
mov cl, 0x35
xor cl, 0x35
cmp al, cl
jne 0x1401e41ea
mov eax, dword [0x1401feab0]
sub eax, dword [0x1401feab4]
and eax, 0x2214f3d
mov ecx, 0x898b5b5c
xor edx, edx
div ecx
mov ecx, 0x7ad72fdc
xor edx, edx
div ecx
mov ecx, 0xbc50d35b
xor ecx, 0xa8f6d2c4
cmp eax, ecx
ja 0x1401e42c5
mov rax, qword [rbp + 0x140]
mov r9d, dword [0x1401feab8]
mov edx, dword [0x1401feabc]
xor edx, 0x9a4863ea
xor r9d, 0xffffffff
xor edx, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xa96f1e46
or r9d, edx
or ecx, 0xa96f1e46
xor r9d, 0xffffffff
and r9d, ecx
mov ecx, r9d
xor ecx, 0xc4cecd1d
mov edx, 0xffffffff
xor edx, 0xc4cecd1d
and r9d, edx
shl r9d, 1
sub r9d, ecx
mov ecx, r9d
xor ecx, 0xffffffff
and ecx, 0x6cab90f4
mov r8d, 0xffffffff
xor r8d, 0x6cab90f4
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0xdc735b62
mov r10d, 0x1d510780
xor r10d, 0x71fa9774
and edx, r10d
and r8d, 0xdc735b62
or ecx, r9d
or edx, r8d
xor ecx, edx
mov edx, 0xfd5b5270
xor edx, 0xfb80525a
sub ecx, edx
mov dword [rbp + 0x124], ecx
mov rcx, qword [0x140208988]
mov rdx, qword [rcx]
mov qword [rbp + 0x300], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x308], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x2f0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2f8], rax
lea rcx, [rbp + 0x310]
lea rdx, [rbp + 0x300]
lea r8, [rbp + 0x2f0]
sub rsp, 0x20
call fcn.1401df077
mov rcx, qword [rbp + 0x1c0]
mov eax, dword [rbp + 0x124]
add rsp, 0x20
mov rdx, qword [rbp + 0x310]
mov qword [rbp + 0x128], rdx
mov rdx, qword [rbp + 0x318]
mov qword [rbp + 0x130], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x13f], cl
cmp eax, 0x70b8ab1d
jb 0x1401e42c5
mov al, byte [rbp + 0x13f]
test al, 1
jne 0x1401e3463
jmp 0x1401e41ea
mov ecx, dword [0x1401feac0]
mov edx, dword [0x1401feac4]
xor edx, 0x2e01efcc
mov eax, 0x8b4df009
xor eax, 0x74b20ff6
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
mov r8d, 0x3a8be24e
xor r8d, 0xc5741db1
xor edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xdcb66c50
xor ecx, 0xb6ad68e6
add eax, ecx
add eax, 0x4d182d02
sub eax, 0x6a1b04b6
mov ecx, 0xd0ebda5e
xor ecx, 0x98fbbfce
xor eax, ecx
sub eax, 0x318b08e4
cmp eax, 0xa24f7d5f
jb 0x1401e42ce
mov rcx, qword [rbp + 0x160]
mov r8, qword [rbp + 0x128]
mov edx, dword [0x1401feac8]
mov r9d, dword [str.lStd]
xor r9d, 0xffffffff
mov eax, edx
xor eax, r9d
and eax, edx
mov r9d, 0x6820bc3f
xor edx, edx
div r9d
mov rdx, qword [rbp + 0x130]
mov r9d, eax
mov rax, qword [rbp + 0x1c8]
mov r10d, 0xaa4327a3
xor r10d, 0x57db139e
sub r9d, r10d
mov r10d, 0xe35ce0e8
xor r10d, 0x77626c0c
sub r9d, r10d
add r9d, 0xfd98343d
sub r9d, 0xf239a9db
add r9d, 0x8c583e6b
add r9d, 0xf239a9db
mov dword [rbp + 0x114], r9d
mov r9d, 0x21527c5d
xor r9d, 0x9e2e7bb6
mov dword [rbp + 0x110], r9d
mov qword [rax + 0x18], r8
mov qword [rax + 0x20], rdx
mov word [rcx], 0xb85
sub rsp, 0x20
call fcn.14006d720
mov rdx, qword [rbp + 0x1c0]
mov ecx, dword [rbp + 0x110]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x114]
mov qword [rbp + 0x118], r8
mov dl, byte [rdx]
mov r8b, 0x35
xor r8b, 0x35
cmp dl, r8b
sete dl
mov byte [rbp + 0x123], dl
cmp eax, ecx
je 0x1401e42ce
mov al, byte [rbp + 0x123]
test al, 1
jne 0x1401e35d2
jmp 0x1401e41ea
mov rax, qword [rbp + 0x118]
mov rcx, qword [0x140208990]
mov rdx, qword [rcx]
mov qword [rbp + 0x2d0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x2d8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x2c0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2c8], rax
lea rcx, [rbp + 0x2e0]
lea rdx, [rbp + 0x2d0]
lea r8, [rbp + 0x2c0]
sub rsp, 0x20
call fcn.1401df077
mov rax, qword [rbp + 0x1c0]
add rsp, 0x20
mov rcx, qword [rbp + 0x2e0]
mov qword [rbp + 0x100], rcx
mov rcx, qword [rbp + 0x2e8]
mov qword [rbp + 0x108], rcx
mov al, byte [rax]
mov cl, 0x9b
xor cl, 0x9b
cmp al, cl
jne 0x1401e41ea
mov rcx, qword [rbp + 0x168]
mov rax, qword [rbp + 0x1c8]
mov rdx, qword [rbp + 0x108]
mov r8, qword [rbp + 0x100]
mov qword [rax + 0x28], r8
mov qword [rax + 0x30], rdx
mov word [rcx], 0xba9
sub rsp, 0x20
call fcn.14006d720
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0xf8], rcx
cmp byte [rax], 0
jne 0x1401e41ea
mov rax, qword [rbp + 0xf8]
mov rcx, qword [0x140208990]
mov rdx, qword [rcx]
mov qword [rbp + 0x2a0], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x2a8], rcx
mov rcx, qword [rax]
mov qword [rbp + 0x290], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x298], rax
lea rcx, [rbp + 0x2b0]
lea rdx, [rbp + 0x2a0]
lea r8, [rbp + 0x290]
sub rsp, 0x20
call fcn.1401df077
mov rax, qword [rbp + 0x1c0]
add rsp, 0x20
mov rcx, qword [rbp + 0x2b0]
mov qword [rbp + 0xe8], rcx
mov rcx, qword [rbp + 0x2b8]
mov qword [rbp + 0xf0], rcx
cmp byte [rax], 0
jne 0x1401e41ea
mov rax, qword [rbp + 0x1c8]
mov rcx, qword [rbp + 0xf0]
mov rdx, qword [rbp + 0xe8]
mov qword [rax + 0x38], rdx
mov qword [rax + 0x40], rcx
mov ecx, 0x3bd
sub rsp, 0x20
call fcn.14006d5fc
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0xe0], rcx
mov al, byte [rax]
mov cl, 0xba
xor cl, 0xba
cmp al, cl
jne 0x1401e41ea
mov ecx, 0x509
sub rsp, 0x20
call fcn.14006d5fc
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1c0]
mov qword [rbp + 0xd8], rcx
cmp byte [rax], 0
jne 0x1401e41ea
mov rcx, qword [rbp + 0xd8]
mov rdx, qword [rbp + 0xe0]
mov rax, qword [rbp + 0x1b8]
mov r8, qword [rbp + 0x1a0]
mov r9, qword [rbp + 0x190]
lea r10, [rbp + 0x240]
add r10, 8
mov qword [rbp + 0x80], r10
lea r10, [rbp + 0x220]
add r10, 8
mov qword [rbp + 0x88], r10
lea r10, [rbp + 0x210]
add r10, 8
mov qword [rbp + 0x90], r10
add r9, 8
mov qword [rbp + 0x98], r9
add r8, 8
mov qword [rbp + 0xa0], r8
lea r8, [rbp + 0x200]
add r8, 8
mov qword [rbp + 0xa8], r8
add rax, 8
mov qword [rbp + 0xb0], rax
lea rax, [rbp + 0x1f0]
add rax, 8
mov qword [rbp + 0xb8], rax
xor eax, eax
mov qword [rbp + 0xc0], rdx
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xd0]
mov qword [rbp + 0x68], rax
mov qword [rbp + 0x70], rdx
mov qword [rbp + 0x78], rcx
movabs rcx, 0x661ae8aaf29ff066
movabs rdx, 0x661ae8aaf29ff062
xor rcx, rdx
cmp rax, rcx
je 0x1401e40b6
mov rcx, qword [rbp + 0x68]
mov rax, qword [rbp + 0x1c8]
add rax, 8
shl rcx, 4
add rax, rcx
mov qword [rbp + 0x60], rax
lea rcx, [rbp + 0x260]
mov edx, 0x30
sub rsp, 0x20
call fcn.1401d5cd1
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0x188]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
lea rdx, [rbp + 0x260]
sub rsp, 0x20
call fcn.1400d3a90
mov rax, qword [rbp + 0x1c0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xce
xor cl, 0xce
cmp al, cl
jne 0x1401e4087
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x78]
cmp byte [rbp + 0x260], 0
mov qword [rbp + 0x50], rcx
mov qword [rbp + 0x58], rax
je 0x1401e408c
mov eax, dword [0x1401fead0]
xor eax, 0x14364d14
mov edx, dword [0x1401fead4]
xor edx, 0xe2cac465
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov edx, eax
xor edx, 0x10a8889e
mov ecx, 0xe378a7f8
xor ecx, 0x1c875807
xor edx, ecx
mov ecx, 0xfde0d84b
xor ecx, 0xed4850d5
and ecx, edx
shl ecx, 1
sub ecx, 0x10a8889e
sub eax, ecx
add eax, 0x9d802500
mov ecx, 0xbe307452
xor edx, edx
div ecx
cmp eax, 0x3a132686
jae 0x1401e42d7
mov rax, qword [rbp + 0x60]
mov ecx, dword [0x1401fead8]
mov edx, 0x7d91b748
xor edx, 0x79d941e2
xor ecx, edx
mov r8d, dword [0x1401feadc]
mov edx, ecx
xor edx, r8d
mov r9d, 0x9d301fc9
xor r9d, 0x62cfe036
xor edx, r9d
or ecx, r8d
and ecx, edx
mov edx, 0x75e4168c
xor edx, 0x5dac5d08
or ecx, edx
mov edx, 0x2675bb33
xor edx, 0xd98a44cc
xor ecx, edx
mov r8d, 0xffffffff
xor r8d, 0x9ea49e1a
mov edx, 0xb831f61c
xor edx, 0xfa919508
mov r9d, 0x869532ed
xor r9d, 0x796acd12
xor edx, r9d
or ecx, r8d
or edx, 0x42a06314
mov r8d, 0x773543b2
xor r8d, 0x88cabc4d
xor ecx, r8d
and ecx, edx
xor ecx, 0xffffffff
mov r8d, 0x88ce0499
xor r8d, 0x13df1402
mov edx, 0xee7f769b
xor edx, 0x11808964
xor r8d, edx
mov edx, 0xffffffff
xor edx, 0x2cecb850
or ecx, r8d
or edx, 0x2cecb850
mov r8d, 0xa89508f3
xor r8d, 0x576af70c
xor ecx, r8d
and ecx, edx
mov dword [rbp + 0x34], ecx
mov ecx, 0x3a7d3406
xor ecx, 0x850bbfcb
mov dword [rbp + 0x30], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x230], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x238], rax
lea rcx, [rbp + 0x240]
lea rdx, [rbp + 0x230]
xor eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400cb830
mov r8, qword [rbp + 0x80]
mov rdx, qword [rbp + 0x1c0]
mov ecx, dword [rbp + 0x30]
mov eax, dword [rbp + 0x34]
add rsp, 0x20
mov r9, qword [rbp + 0x240]
mov qword [rbp + 0x38], r9
mov r8, qword [r8]
mov qword [rbp + 0x40], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x4f], dl
cmp eax, ecx
je 0x1401e39a3
mov al, byte [rbp + 0x4f]
test al, 1
jne 0x1401e3b09
jmp 0x1401e4087
mov rdx, qword [rbp + 0x70]
mov rax, rdx
add rax, 1
mov qword [rbp + 0x28], rax
xor rdx, 0xffffffffffffffff
mov rcx, rax
xor rcx, rdx
movabs r8, 0x457e43d7dbfac359
movabs r9, 0xba81bc2824053ca6
xor r8, r9
xor rcx, r8
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1401e3b6e
sub rsp, 0x20
call fcn.1400091c0
mov rcx, qword [rbp + 0x70]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jmp 0x1401e3fc6
mov rcx, qword [rbp + 0x180]
mov word [rcx], 0x469
sub rsp, 0x20
call fcn.14006d720
mov rdx, qword [rbp + 0x1c0]
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0x10], r8
cmp byte [rdx], 0
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jne 0x1401e3fc6
mov rdx, qword [rbp + 0x28]
lea rcx, [rbp + 0x220]
sub rsp, 0x20
call fcn.140005464
mov r8, qword [rbp + 0x88]
mov rdx, qword [rbp + 0x1c0]
mov rcx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov r9, qword [rbp + 0x220]
mov qword [rbp], r9
mov r8, qword [r8]
mov qword [rbp + 8], r8
cmp byte [rdx], 0
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jne 0x1401e3fc6
mov rcx, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x198]
mov rax, qword [rbp + 0x90]
mov r8, qword [rbp + 8]
mov r9, qword [rbp]
mov r10, qword [rbp + 0x10]
mov r11, qword [r10]
mov qword [rdx], r11
mov r10, qword [r10 + 8]
mov qword [rdx + 8], r10
mov qword [rbp + 0x210], r9
mov qword [rax], r8
lea r8, [rbp + 0x210]
sub rsp, 0x20
call fcn.1401df077
mov r8, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x98]
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov r8, qword [r8]
mov qword [rbp - 0x18], r8
mov rdx, qword [rdx]
mov qword [rbp - 0x10], rdx
mov cl, byte [rcx]
mov dl, 0xbb
xor dl, 0xbb
cmp cl, dl
mov qword [rbp - 8], rax
jne 0x1401e3f1b
mov ax, 0x5e20
xor ax, 0x5c31
mov word [rbp + 0x25e], ax
lea rcx, [rbp + 0x25e]
sub rsp, 0x20
call fcn.14006d720
mov rcx, qword [rbp + 0x1c0]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp - 0x28], rdx
cmp byte [rcx], 0
mov qword [rbp - 0x20], rax
jne 0x1401e3eb5
mov r8, qword [rbp + 0x1b0]
mov rdx, qword [rbp + 0x1a0]
mov rax, qword [rbp - 0x28]
mov rcx, qword [rbp + 0xa0]
mov r9, qword [rbp - 0x10]
mov r10, qword [rbp - 0x18]
mov qword [rdx], r10
mov qword [rcx], r9
mov rcx, qword [rax]
mov qword [r8], rcx
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
lea rcx, [rbp + 0x200]
sub rsp, 0x20
call fcn.1401df077
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov r8, qword [rbp + 0x200]
mov qword [rbp - 0x38], r8
mov rdx, qword [rdx]
mov qword [rbp - 0x30], rdx
mov cl, byte [rcx]
mov dl, 0x4f
xor dl, 0x4f
cmp cl, dl
mov qword [rbp - 0x20], rax
jne 0x1401e3eb5
mov rsi, qword [rbp - 0x38]
lea rcx, [rbp + 0x250]
mov edx, 8
sub rsp, 0x20
call fcn.1401d5cd1
mov rcx, qword [rbp + 0x158]
mov r11, qword [rbp - 0x30]
mov r10, qword [rbp + 0xb0]
mov r9, qword [rbp + 0x38]
mov r8, qword [rbp + 0x40]
mov rax, qword [rbp + 0xb8]
mov rdx, qword [rbp + 0x1b8]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 0x18
mov qword [rdx], rsi
mov qword [r10], r11
mov qword [rbp + 0x1f0], r9
mov qword [rax], r8
lea r8, [rbp + 0x1f0]
sub rsp, 0x20
call fcn.14012d870
mov rcx, qword [rbp + 0x1c0]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x78]
mov qword [rbp - 0x48], rdx
mov qword [rbp + 0x250], rdx
cmp byte [rcx], 0
mov qword [rbp - 0x40], rax
jne 0x1401e3e5f
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.1400a1323
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x78]
add rsp, 0x20
cmp byte [rcx], 0
mov qword [rbp - 0x40], rax
jne 0x1401e3e5f
mov r8, qword [rbp + 0x78]
mov rax, r8
add rax, 1
xor r8, 0xffffffffffffffff
mov rcx, rax
xor rcx, 0xffffffffffffffff
mov rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
mov rdx, rax
and rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
cmp rcx, 0
mov qword [rbp - 0x40], rax
jge 0x1401e3e5f
sub rsp, 0x20
call fcn.1400091c0
mov rax, qword [rbp + 0x78]
add rsp, 0x20
mov qword [rbp - 0x40], rax
mov rcx, qword [rbp - 0x30]
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x50], rax
cmp rcx, 0
mov qword [rbp - 0x20], rax
je 0x1401e3eb5
mov rax, qword [rbp - 0x50]
mov rdx, qword [rbp - 0x30]
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
mov qword [rbp - 0x20], rax
jne 0x1401e3eb5
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.140011305
mov rax, qword [rbp - 0x50]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov rcx, qword [rbp - 0x10]
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x58], rax
cmp rcx, 0
mov qword [rbp - 8], rax
je 0x1401e3f1b
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x10]
mov rcx, qword [rcx]
movabs rdx, 0x5ac5879b218a0415
movabs r8, 0x1ac5879b218a0415
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp - 8], rax
jne 0x1401e3f1b
mov rcx, qword [rbp - 0x10]
sub rsp, 0x20
call fcn.140011305
mov rax, qword [rbp - 0x58]
add rsp, 0x20
mov qword [rbp - 8], rax
mov rcx, qword [rbp + 0x28]
mov rdx, qword [rbp + 8]
mov rax, qword [rbp - 8]
mov qword [rbp - 0x60], rax
cmp rdx, 0
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
je 0x1401e3fc6
mov rax, qword [rbp - 0x60]
mov rcx, qword [rbp + 0x28]
mov rdx, qword [rbp + 8]
mov r8, qword [rdx]
movabs r9, 0x6268eded7c6eeef5
movabs rdx, 0x2268eded7c6eeef5
xor r9, rdx
mov rdx, r8
and rdx, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
movabs r10, 0x4000000000000000
xor r9, r10
or r8, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
cmp rdx, 0
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
jne 0x1401e3fc6
mov rcx, qword [rbp + 8]
sub rsp, 0x20
call fcn.140011305
mov rcx, qword [rbp + 0x28]
mov rax, qword [rbp - 0x60]
add rsp, 0x20
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
mov rax, qword [rbp + 0x40]
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x20]
mov qword [rbp - 0x70], rdx
mov qword [rbp - 0x68], rcx
cmp rax, 0
je 0x1401e4067
mov rax, qword [rbp + 0x40]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
movabs rdx, 0x73357ecf67fd75df
movabs r8, 0x33357ecf67fd75df
xor rdx, r8
movabs r8, 0xb7bfdbc85caf9259
movabs r9, 0x48402437a3506da6
xor r8, r9
xor rdx, r8
and rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x1401e4067
mov rcx, qword [rbp + 0x40]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rax, qword [rbp - 0x68]
mov rcx, qword [rbp - 0x70]
mov rdx, qword [rbp + 0x1c0]
cmp byte [rdx], 0
mov qword [rbp + 0x50], rcx
mov qword [rbp + 0x58], rax
je 0x1401e408c
jmp 0x1401e41ea
mov rax, qword [rbp + 0x68]
mov rdx, qword [rbp + 0x50]
mov rcx, qword [rbp + 0x58]
add rax, 1
mov qword [rbp + 0xc0], rdx
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
jmp 0x1401e3864
sub rsp, 0x20
mov cx, 0x374
call fcn.14006d5fc
mov rdx, qword [rbp + 0x78]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1c0]
mov al, byte [rax]
test al, al
sete al
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1401e40f1
jmp 0x1401e41ea
mov eax, dword [0x1401feae0]
mov ecx, dword [0x1401feae4]
mov edx, 0xf7adc8b3
xor edx, 0x19b5555d
xor ecx, edx
imul eax, ecx
mov ecx, 0x564df600
xor ecx, 0xaf97ec6
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x7b85dfb1
xor ecx, 0x69a7b233
mov edx, 0xc3c2ca8d
xor edx, 0x3c3d3572
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x12226d82
or ecx, edx
mov edx, 0xd9172660
xor edx, 0x26e8d99f
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x4e94b668
add ecx, eax
xor eax, eax
sub eax, ecx
cmp eax, 0xa99253e6
je 0x1401e42e0
mov rdx, qword [rbp + 0x158]
mov eax, dword [0x1401feae8]
sub eax, dword [0x1401feaec]
sub eax, 0xc90bbe20
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x8aa969a1
add ecx, eax
mov eax, 0xa23f61ad
xor eax, 0xa23f61ad
sub eax, ecx
mov r8d, 0x4b140e27
xor r8d, 0x51e65803
mov ecx, eax
and ecx, r8d
shl ecx, 1
add eax, 0x1af25624
sub eax, ecx
mov ecx, 0x328c624d
xor ecx, 0xa9f9c977
mov rdx, qword [rdx]
mov rdx, qword [rdx + 0x38]
mov byte [rdx], 1
cmp eax, ecx
jae 0x1401e417b
jmp 0x1401e41ea
mov rax, qword [rbp + 0x1c8]
movabs rcx, 0x284f26d0b39aed29
movabs rdx, 0x284f26d0b39aed2d
xor rcx, rdx
mov qword [rbp + 0x1e0], rcx
mov qword [rbp + 0x1e8], rax
lea rcx, [rbp + 0x1e0]
sub rsp, 0x20
call fcn.14001ca00
mov rax, qword [rbp + 0x1c0]
add rsp, 0x20
cmp byte [rax], 0
je 0x1401e42bb
sub rsp, 0x20
call fcn.1401d6160
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x78], rax
cmp word [rax + 0x12], 1
jle 0x1401e42bb
mov rax, qword [rbp - 0x78]
mov rax, qword [rax + 0x18]
mov eax, dword [rax + 8]
mov ecx, 0x2cbfa69b
xor ecx, 0xf8baef1d
cmp eax, ecx
jne 0x1401e42bb
mov rax, qword [rbp + 0x1c0]
mov byte [rax], 0
sub rsp, 0x20
call fcn.1401d6172
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.14009f0c0
mov rax, qword [rbp + 0x1c0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401e42bb
sub rsp, 0x20
call fcn.1401d61ce
add rsp, 0x20
lea rsp, [rbp + 0x338]
pop rsi
pop rbp
ret
add ecx, dword [rbx + 0x3ce96b47]
invalid
add dword [rsi + 0x63], edi
sbb ebp, ecx
sti
int1
invalid
invalid
fstp qword [rsi - 0x6d168499]
invalid