Function at 0x140083770
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x348
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x250], rdx
mov qword [rbp + 0x220], rcx
mov eax, 0x10
mov qword [rbp + 0x238], rax
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x238]
mov rcx, rsp
mov qword [rbp + 0x228], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x238]
mov rcx, rsp
mov qword [rbp + 0x230], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, qword [rbp + 0x238]
mov rcx, rsp
mov qword [rbp + 0x240], rcx
call fcn.1401da3e0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x248], rax
sub rsp, 0x20
call fcn.140083750
mov rdx, qword [rbp + 0x250]
add rsp, 0x20
mov qword [rbp + 0x260], rax
mov qword [rbp + 0x258], rax
movups xmm0, xmmword [rdx]
movaps xmmword [rbp + 0x2b0], xmm0
sub rsp, 0x20
lea rcx, [rbp + 0x2b0]
call fcn.140048ed8
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x260]
mov al, byte [rax]
test al, al
sete al
mov byte [rbp + 0x26f], al
and al, cl
test al, 1
jne 0x14008385d
jmp 0x140083b2b
mov rax, qword [rbp + 0x250]
mov rax, qword [rax + 8]
mov qword [rbp + 0x218], rax
cmp rax, 0
je 0x1400839e4
mov rax, qword [rbp + 0x218]
mov rcx, qword [rax]
movabs rdx, 0x61eb42ff5dec3746
movabs rax, 0x21eb42ff5dec3746
xor rdx, rax
mov rax, rcx
and rax, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
or rax, rcx
cmp rax, 0
jne 0x1400839e4
mov ecx, dword [0x1401def58]
mov r8d, dword [0x1401def5c]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x806d8677
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x806d8677
or ecx, 0x806d8677
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xe5ba558c
and eax, edx
or ecx, 0xe5ba558c
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x45df8cba
xor ecx, 0x1405b7a1
xor eax, ecx
mov ecx, 0xbf8d4a9d
xor ecx, 0x1f700762
cmp eax, ecx
jbe 0x14008605d
mov rcx, qword [rbp + 0x218]
mov eax, dword [0x1401def60]
xor eax, 0x8c29c0e6
mov r8d, dword [0x1401def64]
mov edx, eax
and edx, r8d
shl edx, 1
xor eax, r8d
add eax, edx
mov r8d, 0x7eab21d7
xor edx, edx
div r8d
and eax, 0x79a4ffb3
mov edx, 0x52a1182e
xor edx, 0x752f29fd
xor eax, edx
mov dword [rbp + 0x214], eax
sub rsp, 0x20
call fcn.14000e27f
mov eax, dword [rbp + 0x214]
add rsp, 0x20
cmp eax, 0xf94efc1f
je 0x140083978
jmp 0x1400839e4
mov rax, qword [rbp + 0x220]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x208], rcx
xor eax, eax
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov ecx, dword [0x1401def68]
mov edx, dword [0x1401def6c]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
sub eax, 0xdc42bec3
imul ecx, eax, 0xa26f8248
mov edx, 0x962d9216
xor edx, 0x69d26de9
mov eax, ecx
xor eax, edx
mov edx, 0x14c98867
xor edx, 0xeb367798
xor ecx, edx
and eax, ecx
mov ecx, 0xdb44ef1d
or ecx, 0xdb44ef1d
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x6e830a46
xor ecx, 0x917cf5b9
xor eax, ecx
cmp eax, 0xec7f6df3
jae 0x140086066
mov eax, dword [0x1401def70]
mov ecx, dword [0x1401def74]
mov edx, 0xb2c0f365
xor edx, 0xe90862d6
xor ecx, edx
imul eax, ecx
mov ecx, 0x5e0b864
xor edx, edx
div ecx
mov ecx, 0xc311376a
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x208]
and eax, 0xe5285411
mov ecx, 0xbe9a16c7
xor ecx, 0x6c73873d
mov rdx, qword [rdx]
movabs r9, 0x4000000000000000
mov r8, rdx
xor r8, r9
xor r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
or rdx, r9
and rdx, r8
cmp rdx, 0
sete dl
mov byte [rbp + 0x207], dl
cmp eax, ecx
ja 0x140083a78
mov rcx, qword [rbp + 0x208]
mov dl, byte [rbp + 0x207]
xor eax, eax
test dl, 1
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
jne 0x140086022
jmp 0x140086048
mov ecx, dword [0x1401def78]
mov edx, dword [0x1401def7c]
mov eax, 0xb97ed0db
xor eax, 0x46812f24
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0x3d59b4aa
xor ecx, 0x2bcd7575
sub eax, ecx
mov ecx, 0x6af0fc22
xor edx, edx
div ecx
mov ecx, 0xb3a39525
xor edx, edx
div ecx
cmp eax, 0xc9066c79
ja 0x14008606f
mov eax, dword [0x1401def80]
xor eax, 0xc324257a
or eax, dword [0x1401def84]
xor eax, 0xc3894434
mov ecx, 0x17234e57
xor ecx, 0x632c0807
add eax, ecx
add eax, 0xb03d71c
sub eax, 0x5b7c79b4
mov ecx, 0x558dd616
xor ecx, 0x5e8e010a
sub eax, ecx
cmp eax, 0x77056258
jb 0x140083b7d
mov al, byte [rbp + 0x26f]
test al, 1
jne 0x140083bd5
jmp 0x140085e85
mov rcx, qword [rbp + 0x250]
mov rax, qword [rcx]
mov qword [rbp + 0x1e8], rax
add rcx, 8
mov qword [rbp + 0x1f0], rcx
cmp rax, 1
jne 0x140083d73
mov rax, qword [rbp + 0x1f0]
mov rax, qword [rax]
mov qword [rbp + 0x1e0], rax
mov al, byte [rax + 8]
xor ecx, ecx
xor cl, 0x2a
cmp al, cl
jne 0x140083d73
mov rax, qword [rbp + 0x1e0]
cmp rax, 0
je 0x140083c8f
mov rax, qword [rbp + 0x1e0]
mov rcx, qword [rax]
movabs rdx, 0x3dc982f0e5bb9ac3
movabs rax, 0x7dc982f0e5bb9ac3
xor rdx, rax
movabs rax, 0x6be00782aea64d32
movabs r8, 0x941ff87d5159b2cd
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140083c8f
mov rcx, qword [rbp + 0x1e0]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x220]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x1d8], rcx
mov al, 1
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov rcx, qword [rbp + 0x1d8]
mov rax, qword [rcx]
mov rdx, rax
xor rdx, 0xffffffffffffffff
movabs r8, 0x232f99475ede657a
movabs r9, 0x632f99475ede657a
xor r8, r9
movabs r9, 0xb37aafa8463f1254
movabs r10, 0x4c855057b9c0edab
xor r9, r10
xor r8, r9
or rdx, r8
movabs r8, 0x14e2bbd2d3c06bea
movabs r9, 0x54e2bbd2d3c06bea
xor r8, r9
and rax, r8
movabs r8, 0x2f2035dbec47c56d
movabs r9, 0xd0dfca2413b83a92
xor r8, r9
xor rax, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0xa375f784bc47882b
movabs r9, 0x5c8a087b43b877d4
xor r8, r9
xor rax, r8
or rdx, rax
mov al, 1
cmp rdx, 0
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
mov rax, qword [rbp + 0x220]
cmp qword [rax], 0
je 0x140083e1f
mov rcx, qword [rbp + 0x1e8]
mov rax, qword [rbp + 0x248]
mov rdx, qword [rbp + 0x240]
mov r8, qword [rbp + 0x220]
add r8, 8
mov qword [rbp + 0x190], r8
lea r8, [rbp + 0x2a0]
add r8, 8
mov qword [rbp + 0x198], r8
lea r8, [rbp + 0x290]
add r8, 8
mov qword [rbp + 0x1a0], r8
lea r8, [rbp + 0x280]
add r8, 8
mov qword [rbp + 0x1a8], r8
add rdx, 8
mov qword [rbp + 0x1b0], rdx
add rax, 8
mov qword [rbp + 0x1b8], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x1c0], rax
xor eax, eax
mov rcx, rax
mov qword [rbp + 0x1c8], rcx
mov qword [rbp + 0x1d0], rax
jmp 0x140083ee0
mov rax, qword [rbp + 0x1f0]
mov rax, qword [rax]
mov qword [rbp + 0x188], rax
cmp rax, 0
je 0x140083e6c
mov rcx, qword [rbp + 0x188]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140083e6c
mov rcx, qword [rbp + 0x188]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x220]
mov rcx, qword [rax + 8]
mov qword [rbp + 0x180], rcx
xor eax, eax
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov rcx, qword [rbp + 0x180]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
movabs r8, 0x5a51b5be39dd23e9
movabs rax, 0x5a51b5be39dd23e9
xor r8, rax
xor eax, eax
cmp rdx, r8
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
mov rcx, qword [rbp + 0x1c0]
mov rax, qword [rbp + 0x1c8]
mov rdx, qword [rbp + 0x1d0]
mov qword [rbp + 0x170], rdx
mov qword [rbp + 0x178], rax
cmp rax, rcx
je 0x140085c5a
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x250]
mov rcx, qword [rcx]
mov qword [rbp + 0x168], rcx
cmp rax, rcx
jl 0x140083f6d
mov rcx, qword [rbp + 0x178]
mov rdx, qword [rbp + 0x168]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
sub rsp, 0x20
call fcn.1400137e9
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x160], rax
jmp 0x140085b4c
mov rax, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x178]
mov rdx, qword [rbp + 0x1f0]
mov rdx, qword [rdx]
mov qword [rbp + 0x148], rdx
mov dl, byte [rdx + r8 + 8]
mov byte [rbp + 0x157], dl
mov rcx, qword [rcx]
mov qword [rbp + 0x158], rcx
cmp rax, rcx
jne 0x1400845c5
mov al, byte [rbp + 0x157]
cmp al, 0x2a
jne 0x140084419
mov eax, dword [0x1401def88]
mov ecx, dword [0x1401def8c]
mov edx, 0x70375dc5
xor edx, 0xaae2c365
xor ecx, edx
imul eax, ecx
add eax, 0x9572da79
imul eax, eax, 0x3d003e4c
mov ecx, 0xe64b6886
xor edx, edx
div ecx
mov ecx, 0x202a87cb
xor ecx, 0xaebf31ae
cmp eax, ecx
je 0x140086078
mov rcx, qword [rbp + 0x168]
mov eax, dword [0x1401def90]
mov r8d, dword [0x1401def94]
mov edx, 0xd679260a
xor edx, 0xd679260a
sub edx, eax
xor eax, eax
sub eax, r8d
add edx, eax
mov eax, 0x902cffac
xor eax, 0x902cffac
sub eax, edx
mov edx, eax
xor edx, 0x6e3e9ad0
xor edx, 0xffffffff
or eax, 0x6e3e9ad0
and eax, edx
or eax, eax
xor eax, 0xffffffff
mov edx, 0x1dbddc93
xor edx, 0xce5fe693
mov r8d, 0xefb33aa9
xor r8d, 0x3c5100a9
or edx, r8d
mov r8d, 0x79c28c09
xor r8d, 0x863d73f6
xor edx, r8d
xor eax, 0xffffffff
mov r8d, 0xb6757578
xor r8d, 0x498a8a87
xor edx, r8d
and eax, edx
add eax, 0x8ed642b1
xor edx, edx
mov r8d, edx
sub r8, rcx
movabs rdx, 0x8ce8ebde1706f999
movabs r9, 0x8ce8ebde1706f999
xor rdx, r9
movabs r9, 0xe05fd1d372c9c19a
movabs r10, 0x1fa02e2c8d363e65
xor r9, r10
sub rdx, r9
add r8, rdx
xor edx, edx
sub rdx, r8
mov qword [rbp + 0x138], rdx
xor rdx, rcx
cmp rdx, 0
setl dl
cmp rcx, 0
setg cl
and cl, dl
mov byte [rbp + 0x147], cl
cmp eax, 0x3cd366da
jbe 0x140086078
mov al, byte [rbp + 0x147]
test al, 1
jne 0x1400843f9
jmp 0x140084111
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x138]
cmp rax, rcx
jne 0x140084419
mov rcx, qword [rbp + 0x148]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140084260
mov ecx, dword [str._Cbg]
xor ecx, 0xf240d865
mov r8d, dword [0x1401def9c]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0x425c13cf
xor r9d, 0xbda3ec30
mov edx, ecx
xor edx, r9d
or eax, edx
and eax, r8d
xor eax, 0xffffffff
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x81cfd84a
xor ecx, 0x8fa988ed
add eax, ecx
mov ecx, 0x29fd583e
xor ecx, 0xe62a434c
add eax, ecx
mov ecx, 0xb8b28474
xor ecx, 0xb6d4d4d3
sub eax, ecx
mov edx, 0x1d168a04
xor edx, 0x75d94472
mov ecx, eax
xor ecx, edx
mov edx, 0x6613ecd0
xor edx, 0x99ec132f
xor ecx, edx
or eax, 0x68cfce76
and eax, ecx
and eax, 0xead3bd14
cmp eax, 0x166aa0bd
jbe 0x140086081
mov rcx, qword [rbp + 0x148]
mov eax, dword [0x1401defa0]
mov r8d, dword [0x1401defa4]
mov edx, eax
xor edx, r8d
xor edx, 0xffffffff
or eax, r8d
and eax, edx
xor eax, 0xbfe2bfd8
and eax, 0xf149e116
mov edx, eax
and edx, 0x7a5106e5
mov r8d, 0xe035e71
xor r8d, 0xe035e73
imul edx, r8d
xor eax, 0x7a5106e5
add eax, edx
mov dword [rbp + 0x134], eax
sub rsp, 0x20
call fcn.14000e27f
mov eax, dword [rbp + 0x134]
add rsp, 0x20
cmp eax, 0x81a429cb
je 0x1400841ec
jmp 0x140084260
mov eax, dword [0x1401defa8]
mov ecx, 0xdcedc9cd
xor ecx, 0x7afcc0f1
xor eax, ecx
and eax, dword [0x1401defac]
mov ecx, 0xe2200f03
xor ecx, 0x90606caf
imul eax, ecx
xor ecx, ecx
sub ecx, 0x25bcb00c
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x233afd34
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x233afd34
or eax, 0x233afd34
imul eax, edx
add eax, ecx
cmp eax, 0xb1256453
jb 0x14008608a
mov eax, dword [0x1401defb0]
and eax, dword [0x1401defb4]
mov ecx, eax
xor ecx, 0xffffffff
mov r8d, 0x497334b2
xor r8d, 0xb68ccb4d
mov edx, eax
xor edx, r8d
and ecx, edx
mov edx, 0x14307028
or edx, 0x14307028
xor edx, 0xffffffff
or ecx, edx
xor ecx, 0xffffffff
or eax, 0x14307028
mov edx, 0xde3e965c
xor edx, 0x21c169a3
xor eax, edx
xor ecx, 0xffffffff
mov edx, 0x41791af9
xor edx, 0xbe86e506
xor eax, edx
and ecx, eax
mov eax, ecx
or eax, 0x42d657e
mov edx, 0xeddae2ff
xor edx, 0x12251d00
xor eax, edx
or ecx, 0x42d657e
mov edx, 0xd3e62b94
xor edx, 0x2c19d46b
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x512e5235
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x190]
mov ecx, 0x8b8f7a01
xor ecx, 0x82d838d4
mov rdx, qword [rdx]
mov qword [rbp + 0x128], rdx
cmp rdx, 0
sete dl
mov byte [rbp + 0x133], dl
cmp eax, ecx
jae 0x14008608a
mov cl, byte [rbp + 0x133]
mov al, 1
test cl, 1
mov byte [rbp + 0x213], al
jne 0x140086048
jmp 0x1400843a9
mov rcx, qword [rbp + 0x128]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
movabs r8, 0x9b2b282a07fe90df
movabs rax, 0x9b2b282a07fe90df
xor r8, rax
mov al, 1
cmp rdx, r8
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
sub rsp, 0x20
call fcn.1400067fe
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x160], rax
jmp 0x140085b4c
mov rax, qword [rbp + 0x148]
mov rax, qword [rax]
movabs rcx, 0x4f8da8bad09faefd
movabs rdx, 0xf8da8bad09faefd
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x14008445b
mov rcx, qword [rbp + 0x148]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x190]
mov rcx, qword [rax]
mov qword [rbp + 0x120], rcx
xor eax, eax
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov eax, dword [0x1401defb8]
mov ecx, dword [0x1401defbc]
xor ecx, 0x854b983a
xor edx, edx
div ecx
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x2d5f8a7a
add eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9bc7d9e0
mov ecx, 0xf5d78b73
xor ecx, 0xa4cbaa5a
mov r8d, 0x31c32804
xor r8d, 0xce3cd7fb
xor ecx, r8d
or eax, edx
or ecx, 0x511c2129
xor eax, 0xffffffff
and eax, ecx
sub eax, 0xf1cbf1a1
cmp eax, 0xfd1b893d
jae 0x140086093
mov rcx, qword [rbp + 0x120]
mov eax, dword [0x1401defc0]
xor eax, 0x837a9067
mov r8d, dword [0x1401defc4]
xor r8d, 0x30f018b3
mov edx, eax
xor edx, r8d
mov r9d, 0x80102269
xor r9d, 0x7fefdd96
xor r8d, r9d
and eax, r8d
shl eax, 1
sub eax, edx
add eax, 0xcadcf871
add eax, 0xe406407c
sub eax, 0xcadcf871
mov edx, 0xfbf41832
xor edx, 0xfbb8a8b1
xor eax, edx
sub eax, 0xf7d9271a
mov rcx, qword [rcx]
movabs r8, 0x121f437c25e439b3
movabs rdx, 0x121f437c25e439b2
xor r8, rdx
mov rdx, rcx
add rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
cmp rcx, 0
sete cl
mov byte [rbp + 0x11f], cl
cmp eax, 0x14c63a2
jb 0x140086093
mov rcx, qword [rbp + 0x120]
mov dl, byte [rbp + 0x11f]
xor eax, eax
test dl, 1
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
jne 0x140086022
jmp 0x140086048
mov rdx, qword [rbp + 0x158]
mov rcx, qword [rbp + 0x170]
test rcx, rcx
setns al
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140084631
mov rcx, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x158]
movabs rax, 0x8d95e7ef78aa4a64
movabs r8, 0x726a18108755b59b
xor rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.1400137e9
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x160], rax
jmp 0x140085b4c
mov cl, byte [rbp + 0x157]
mov rdx, qword [rbp + 0x170]
mov rax, qword [rbp + 0x190]
mov rax, qword [rax]
mov al, byte [rax + rdx + 8]
mov byte [rbp + 0x11d], al
sub rsp, 0x20
call fcn.140043636
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x258]
mov byte [rbp + 0x11e], cl
cmp byte [rax], 0
jne 0x140085e85
mov cl, byte [rbp + 0x11d]
sub rsp, 0x20
call fcn.140043636
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x258]
mov byte [rbp + 0x11c], cl
mov al, byte [rax]
mov cl, 0x7b
xor cl, 0x7b
cmp al, cl
jne 0x140085e85
mov al, byte [rbp + 0x11e]
mov cl, byte [rbp + 0x11c]
cmp al, cl
jne 0x1400846d3
mov rax, qword [rbp + 0x170]
add rax, 1
mov qword [rbp + 0x110], rax
jmp 0x140085b6a
mov al, byte [rbp + 0x157]
sub al, 0x2a
je 0x14008480d
jmp 0x1400846e6
mov al, byte [rbp + 0x157]
sub al, 0x3f
jne 0x140084737
jmp 0x1400846f9
mov rax, qword [rbp + 0x170]
movabs rcx, 0x300ee7ac05e45bd6
movabs rdx, 0x29d11363b1400195
xor rcx, rdx
add rax, rcx
add rax, 1
movabs rcx, 0x19dff4cfb4a45a43
sub rax, rcx
mov qword [rbp + 0x110], rax
jmp 0x140085b6a
mov rax, qword [rbp + 0x1f0]
mov rax, qword [rax]
mov qword [rbp + 0x108], rax
cmp rax, 0
je 0x14008479a
mov rcx, qword [rbp + 0x108]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x2514b24bb8902f07
movabs rdx, 0x2514b24bb8902f07
xor rcx, rdx
cmp rax, rcx
jne 0x14008479a
mov rcx, qword [rbp + 0x108]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x190]
mov rcx, qword [rax]
mov qword [rbp + 0x100], rcx
xor eax, eax
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov rcx, qword [rbp + 0x100]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
movabs r8, 0x877604edd1008275
movabs rax, 0x877604edd1008275
xor r8, rax
xor eax, eax
cmp rdx, r8
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
mov rax, qword [rbp + 0x250]
mov rdx, qword [rax]
movabs rcx, 0x7774e45b46c2c1af
movabs rax, 0xe13b736b8803551d
xor rcx, rax
mov rax, rdx
sub rax, rcx
add rax, 0xffffffffffffffff
movabs rcx, 0xee005a507217292d
movabs r8, 0x784fcd60bcd6bd9f
xor rcx, r8
add rax, rcx
mov qword [rbp + 0xf8], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl dl
cmp rax, 0xffffffffffffffff
setg cl
mov al, cl
xor al, 0xff
xor r8d, r8d
mov r9b, r8b
xor r9b, 1
mov r8b, dl
xor r8b, r9b
or al, r8b
and cl, dl
xor cl, 0xff
xor al, 0xff
xor cl, 0xff
or al, cl
test al, 1
jne 0x140084a32
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0xf8]
cmp rax, rcx
jne 0x140084a52
mov rax, qword [rbp + 0x1f0]
mov rax, qword [rax]
mov qword [rbp + 0xf0], rax
cmp rax, 0
je 0x140084952
mov rax, qword [rbp + 0xf0]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0xff5d7b1114f5a8bc
movabs rdx, 0xbf5d7b1114f5a8bc
xor rcx, rdx
movabs rdx, 0xd2e345285e886508
movabs r8, 0x92e345285e886508
xor rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rcx
xor rax, 0xffffffffffffffff
movabs rcx, 0x4962f6c748a12931
movabs rdx, 0x4962f6c748a12931
xor rcx, rdx
cmp rax, rcx
jne 0x140084952
mov rcx, qword [rbp + 0xf0]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x190]
mov rcx, qword [rax]
mov qword [rbp + 0xe8], rcx
mov al, 1
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rcx]
mov rdx, rax
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
or rdx, r8
movabs r8, 0x1767001757caac7c
movabs r9, 0xe898ffe8a8355383
xor r8, r9
xor rax, r8
movabs r8, 0x9290af6deb555835
movabs r9, 0xd290af6deb555835
xor r8, r9
movabs r9, 0xdd2074c7450ff432
movabs r10, 0x22df8b38baf00bcd
xor r9, r10
xor r8, r9
or rax, r8
movabs r8, 0x9972abb93be060e0
movabs r9, 0x668d5446c41f9f1f
xor r8, r9
xor rdx, r8
xor rax, 0xffffffffffffffff
or rdx, rax
mov al, 1
cmp rdx, 0
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
sub rsp, 0x20
call fcn.1400067fe
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x160], rax
jmp 0x140085b4c
mov rdx, qword [rbp + 0x228]
mov rax, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x178]
movabs r8, 0x9f7c395696432126
sub rcx, r8
add rcx, 1
movabs r8, 0x18693c898cfb053
movabs r9, 0x9efaaa9e0e8c9175
xor r8, r9
add rcx, r8
mov qword [rbp + 0xd8], rcx
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x2a0]
sub rsp, 0x20
call fcn.14001e153
mov rcx, qword [rbp + 0x198]
mov rax, qword [rbp + 0x1a0]
mov r9, qword [rbp + 0xd8]
add rsp, 0x20
mov rdx, qword [rbp + 0x2a0]
mov rcx, qword [rcx]
mov qword [rbp + 0x290], rdx
mov qword [rax], rcx
lea rdx, [0x1401ee910]
add rdx, 8
lea rcx, [rbp + 0x290]
mov r8d, 2
sub rsp, 0x20
call fcn.140083200
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x258]
mov qword [rbp + 0xe0], rcx
cmp byte [rax], 0
jne 0x140085e85
mov rax, qword [rbp + 0xe0]
cmp rax, 0xffffffffffffffff
sete al
mov byte [rbp + 0xd7], al
test al, 1
jne 0x140084b44
jmp 0x140084b99
mov rax, qword [rbp + 0x250]
mov rdx, qword [rax]
mov rax, rdx
dec rax
test rax, rax
setns cl
or rdx, rax
sets dl
add cl, dl
inc cl
test cl, 1
mov qword [rbp + 0xc8], rax
jne 0x140084b79
jmp 0x140084c3a
sub rsp, 0x20
call fcn.1400067fe
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x160], rax
jmp 0x140085b4c
mov r8, qword [rbp + 0xe0]
mov rax, r8
add rax, 0xffffffffffffffff
mov rcx, rax
xor rcx, 0xffffffffffffffff
movabs rdx, 0x2bdcd3f008e333c5
and rcx, rdx
mov r10, 0xffffffffffffffff
movabs rdx, 0x2bdcd3f008e333c5
xor r10, rdx
mov r9, rax
and r9, r10
mov rdx, r8
xor rdx, 0xffffffffffffffff
movabs r11, 0x2bdcd3f008e333c5
and rdx, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
cmp rcx, 0
setl dl
cmp rax, 0xffffffffffffffff
setg cl
and cl, dl
test cl, 1
mov qword [rbp + 0xc8], rax
jne 0x140084c1a
jmp 0x140084c3a
sub rsp, 0x20
call fcn.1400067fe
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x160], rax
jmp 0x140085b4c
mov rdx, qword [rbp + 0x178]
mov r8, qword [rbp + 0xc8]
mov qword [rbp + 0xb8], r8
movabs rax, 0x8fcdb90faadc9f46
mov rcx, r8
sub rcx, rax
sub rcx, rdx
movabs rax, 0x8fcdb90faadc9f46
add rcx, rax
mov qword [rbp + 0xc0], rcx
mov rax, rcx
xor rax, r8
movabs r8, 0xcf773abb721c0d97
movabs r9, 0xcf773abb721c0d97
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
movabs rdx, 0xd88499856c54aa0f
movabs r8, 0x277b667a93ab55f0
xor rdx, r8
cmp rcx, rdx
setg cl
or al, al
xor edx, edx
xor dl, 1
xor al, dl
or cl, cl
xor cl, 0xff
or al, cl
xor al, 0xff
test al, 1
jne 0x140084cd8
jmp 0x140084cf8
sub rsp, 0x20
call fcn.1400067fe
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x160], rax
jmp 0x140085b4c
mov rdx, qword [rbp + 0xd8]
mov r8, qword [rbp + 0xb8]
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x250]
mov rcx, qword [rcx]
mov qword [rbp + 0xa0], rcx
mov rax, qword [rax]
mov qword [rbp + 0xa8], rax
mov rcx, r8
sub rcx, rdx
mov qword [rbp + 0xb0], rcx
mov rax, rcx
xor rax, r8
movabs r8, 0x64366e9987767154
movabs r9, 0x64366e9987767154
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
and al, cl
test al, 1
jne 0x140084d71
jmp 0x140084d83
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x1400851c9
mov eax, dword [0x1401defc8]
sub eax, dword [0x1401defcc]
mov ecx, 0xe30dbc36
xor edx, edx
div ecx
add eax, 0x6a14c1f5
xor ecx, ecx
sub ecx, 0xd276d99a
add eax, ecx
cmp eax, 0xf0a5e93
je 0x14008609c
mov rcx, qword [rbp + 0xb0]
mov eax, dword [0x1401defd0]
sub eax, dword [0x1401defd4]
mov r8d, 0x382006d1
xor edx, edx
div r8d
mov edx, 0x3693a275
xor edx, 0x3693a275
mov r8d, 0x4174a602
xor r8d, 0x86a37a73
sub edx, r8d
sub eax, edx
imul eax, eax, 0x50ee88fc
mov r8, rcx
and r8, 1
movabs rdx, 0xf1cdb8e8704970ff
movabs r9, 0xf1cdb8e8704970fd
xor rdx, r9
imul r8, rdx
movabs r9, 0xb4774afea4a970e3
movabs rdx, 0xb4774afea4a970e2
xor r9, rdx
mov rdx, rcx
xor rdx, r9
add rdx, r8
mov qword [rbp + 0x90], rdx
mov r8, rcx
xor r8, 0xffffffffffffffff
mov r9, rcx
xor r9, 0xffffffffffffffff
and r8, r9
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
movabs r10, 0x4adada7b45e270ad
movabs r11, 0xb5252584ba1d8f52
xor r10, r11
movabs r11, 0x57afc3057e9621bc
movabs rsi, 0xa8503cfa8169de43
xor r11, rsi
xor r10, r11
and r9, r10
xor r8, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and r8, r9
or rcx, 0xffffffffffffffff
movabs r9, 0xca0e6bb4e0ac06e4
movabs r10, 0x35f1944b1f53f91b
xor r9, r10
xor rcx, r9
or r8, rcx
movabs rcx, 0xcfa7d6c3472a09f5
movabs r9, 0x3058293cb8d5f60a
xor rcx, r9
xor r8, rcx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov rdx, r8
xor rdx, 0xffffffffffffffff
movabs r9, 0xfe62e1c3768da27c
movabs r10, 0x19d1e3c89725d83
xor r9, r10
xor r8, r9
and rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xfb6de72988255e8e
movabs r8, 0xfb6de72988255e8e
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rbp + 0x9f], cl
cmp eax, 0xb5e95ed9
jbe 0x14008609c
mov al, byte [rbp + 0x9f]
test al, 1
jne 0x140084f4c
jmp 0x140084f5e
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x1400851c9
mov rax, qword [rbp + 0x90]
cmp rax, 0
jge 0x140084f96
mov rcx, qword [rbp + 0x90]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c499
add rsp, 0x20
jmp 0x1400851c9
mov rdx, qword [rbp + 0x90]
lea rcx, [rbp + 0x280]
sub rsp, 0x20
call fcn.14001a310
mov rcx, qword [rbp + 0x178]
add rsp, 0x20
xor eax, eax
sub rax, rcx
add rax, 0xfffffffffffffffe
mov qword [rbp + 0x80], rax
xor eax, eax
mov qword [rbp + 0x88], rax
mov rcx, qword [rbp + 0x90]
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x78], rax
cmp rax, rcx
je 0x1400851c9
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x280]
mov qword [rbp + 0x70], rcx
cmp rax, rcx
jl 0x140085038
mov rcx, qword [rbp + 0x78]
mov rdx, qword [rbp + 0x70]
movabs rax, 0x1a5428601cad5fda
movabs r8, 0xe5abd79fe352a025
xor rax, r8
add rdx, rax
sub rsp, 0x20
call fcn.1400137e9
add rsp, 0x20
jmp 0x1400851c9
mov rax, qword [rbp + 0x1a8]
mov rax, qword [rax]
mov qword [rbp + 0x68], rax
cmp rax, 0
je 0x1400850e4
mov rax, qword [rbp + 0x68]
mov rax, qword [rax]
movabs rcx, 0x22415e8ae277f3ea
movabs rdx, 0xddbea1751d880c15
xor rcx, rdx
xor rax, rcx
mov rdx, 0xffffffffffffffff
movabs rcx, 0x4000000000000000
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x3f74b16735fe864a
xor rcx, r8
or rax, rdx
movabs rdx, 0x3f74b16735fe864a
or rcx, rdx
movabs rdx, 0xf3ba065bb1ff37c9
movabs r8, 0xc45f9a44e00c836
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
je 0x1400850e4
lea rcx, [rbp + 0x280]
sub rsp, 0x20
call fcn.140014fb0
add rsp, 0x20
mov rcx, qword [rbp + 0x80]
mov rdx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0x78]
add rax, rdx
mov qword [rbp + 0x60], rax
and rax, rcx
cmp rax, 0
jge 0x14008511c
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x1400851c9
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0xa0]
cmp rax, rcx
jl 0x140085181
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0xa0]
movabs rax, 0x4c9c66c8a4f07046
add rdx, rax
movabs rax, 0xb6fd758c85b988bb
movabs r8, 0x49028a737a467744
xor rax, r8
add rdx, rax
movabs rax, 0x4c9c66c8a4f07046
sub rdx, rax
sub rsp, 0x20
call fcn.1400137e9
add rsp, 0x20
jmp 0x1400851c9
mov rax, qword [rbp + 0x78]
mov rcx, qword [rbp + 0x1a8]
mov rdx, qword [rbp + 0xa8]
mov r8, qword [rbp + 0x60]
mov dl, byte [rdx + r8 + 8]
mov rcx, qword [rcx]
mov byte [rcx + rax + 8], dl
movabs rcx, 0x994157430d3eecc3
movabs rdx, 0x994157430d3eecc2
xor rcx, rdx
add rax, rcx
mov qword [rbp + 0x88], rax
jmp 0x140084fd1
mov rax, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x258]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x280]
mov qword [rbp + 0x48], r8
mov rdx, qword [rdx]
mov qword [rbp + 0x50], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x58], rax
jne 0x1400859b1
mov rax, qword [rbp + 0x170]
cmp rax, 0
jge 0x140085240
mov rcx, qword [rbp + 0x170]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.14000c499
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x58], rax
jmp 0x1400859b1
mov r8, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x240]
mov rcx, qword [rbp + 0x230]
mov rax, qword [rbp + 0x1b0]
mov r9, qword [rbp + 0x50]
mov r10, qword [rbp + 0x48]
mov r11, qword [rbp + 0x220]
mov rsi, qword [r11]
mov qword [rcx], rsi
mov r11, qword [r11 + 8]
mov qword [rcx + 8], r11
mov qword [rdx], r10
mov qword [rax], r9
mov r9, 0xffffffffffffffff
sub rsp, 0x20
call fcn.1400456e0
mov rcx, qword [rbp + 0x258]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x40], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x58], rax
jne 0x1400859b1
mov rax, qword [rbp + 0x40]
mov dl, byte [rbp + 0xd7]
mov rcx, qword [rbp + 0xc0]
cmp rcx, 1
sete cl
and dl, cl
xor ecx, ecx
test dl, 1
mov rdx, rax
mov qword [rbp + 0x28], rdx
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x38], rax
jne 0x1400852ee
jmp 0x1400857d9
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x30]
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x20], rax
mov eax, dword [0x1401defd8]
mov edx, dword [0x1401defdc]
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
imul eax, eax, 0x750e0ec
mov ecx, 0x269a3c93
xor edx, edx
div ecx
mov ecx, 0xb9219b3e
xor edx, edx
div ecx
mov ecx, 0x77e4da9b
xor ecx, 0xaf809043
cmp eax, ecx
je 0x1400860a5
mov eax, dword [0x1401defe0]
xor edx, edx
div dword [0x1401defe4]
mov rdx, qword [rbp + 0x18]
mov ecx, eax
mov eax, 0x866a416b
xor eax, 0xb277f86a
sub ecx, eax
mov eax, ecx
xor eax, 0xebebe937
xor eax, 0xffffffff
and eax, 0xebebe937
shl eax, 1
sub eax, 0xebebe937
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x87bd26fd
or eax, r8d
and ecx, 0x87bd26fd
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov r8d, 0xeafd3c67
xor r8d, 0x1502c398
xor ecx, r8d
or eax, ecx
mov ecx, 0x13bf53a4
xor ecx, 0x1fce01fd
cmp rdx, 0
sete dl
mov byte [rbp + 0x17], dl
cmp eax, ecx
jae 0x140085340
mov rax, qword [rbp + 0x20]
mov cl, byte [rbp + 0x17]
test cl, 1
mov qword [rbp + 0x38], rax
jne 0x1400853e2
jmp 0x1400857d9
mov rcx, qword [rbp + 0x20]
xor eax, eax
mov edx, eax
sub rdx, rcx
xor eax, eax
sub rax, 1
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rbp + 8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x14008542d
sub rsp, 0x20
call fcn.1400067fe
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x58], rax
jmp 0x1400859b1
mov rax, qword [rbp + 8]
cmp rax, 0
jge 0x140085577
mov ecx, dword [0x1401defe8]
xor ecx, 0x48b9ef3d
mov edx, dword [str.PeZ]
mov eax, 0x2eb98ddf
xor eax, 0x1df9498e
xor edx, eax
xor eax, eax
sub eax, edx
add ecx, eax
mov eax, 0xffffffff
xor eax, 0x696e4f4c
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov eax, ecx
and eax, 0x8cbeaad1
mov edx, 0x59cb7ca9
xor edx, 0xd575d678
xor ecx, edx
or eax, ecx
mov ecx, 0x975d0ec
xor ecx, 0xf68a2f13
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xc0e58a6d
mov edx, 0xffffffff
xor edx, 0xf316f28b
or eax, ecx
mov ecx, 0xcf234170
xor ecx, 0x3c35b3fb
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x6cf6ec64
xor ecx, 0xb700e3db
cmp eax, ecx
je 0x1400860ae
mov rcx, qword [rbp + 8]
mov eax, dword [0x1401deff0]
mov r8d, dword [0x1401deff4]
xor eax, 0xffffffff
mov edx, 0x62d2e059
xor edx, 0x9d2d1fa6
xor r8d, edx
mov edx, 0xffffffff
xor edx, 0xf2c643c2
or eax, r8d
or edx, 0xf2c643c2
mov r8d, 0x459a47cd
xor r8d, 0xba65b832
xor eax, r8d
and eax, edx
add eax, 0x40942cf9
sub eax, 0xc978765d
sub eax, 0x40942cf9
sub eax, 0x6e1d9e5d
mov edx, 0x902cbb3
xor edx, 0x28866b82
add 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, 0x6db38c33
jb 0x1400854d2
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x58], rax
jmp 0x1400859b1
mov r8, qword [rbp + 8]
mov rdx, qword [rbp + 0x248]
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x50]
mov r9, qword [rbp + 0x48]
mov r10, qword [rbp + 0x220]
mov r11, qword [r10]
mov qword [rbp + 0x270], r11
mov r10, qword [r10 + 8]
mov qword [rbp + 0x278], r10
mov qword [rdx], r9
mov qword [rax], rcx
movabs r9, 0x6abad8ba537a1124
movabs rax, 0x95452745ac85eedb
xor r9, rax
lea rcx, [rbp + 0x270]
sub rsp, 0x20
call fcn.1400456e0
mov rcx, qword [rbp + 0x258]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x170]
mov qword [rbp - 8], rdx
cmp byte [rcx], 0
mov qword [rbp + 0x58], rax
jne 0x1400859b1
mov eax, dword [0x1401deff8]
mov ecx, dword [0x1401deffc]
xor ecx, 0x6fc07364
or eax, ecx
imul eax, eax, 0xa703d672
mov ecx, 0x403e9a4b
xor ecx, 0x2d636169
and eax, ecx
sub eax, 0x9d4f62af
cmp eax, 0x9111beac
jb 0x1400860b7
mov r8, qword [rbp + 8]
mov r10, qword [rbp - 8]
mov eax, dword [0x1401df000]
xor edx, edx
div dword [0x1401df004]
mov ecx, eax
mov eax, 0x7a5d5522
xor eax, 0x85a2aadd
mov edx, ecx
xor edx, eax
mov eax, 0x9500e8cf
xor eax, 0x75ae5bd5
and eax, edx
mov edx, 0xd2be07f4
xor edx, 0x3210b4ee
mov r9d, 0xc96f7e1e
xor r9d, 0x369081e1
xor edx, r9d
and ecx, edx
or eax, ecx
mov ecx, 0xe035ac1
xor ecx, 0x63c85331
xor edx, edx
div ecx
mov ecx, 0x42b29718
xor edx, edx
div ecx
movabs rdx, 0x63ab30f1494ceb88
mov rcx, r10
add rcx, rdx
sub rcx, r8
movabs rdx, 0x3af2d4d2c94f585e
movabs r9, 0x5959e4238003b3d6
xor rdx, r9
sub rcx, rdx
mov qword [rbp - 0x18], rcx
mov rdx, rcx
xor rdx, 0xffffffffffffffff
movabs r11, 0x6b0c1d2e2d821ab5
movabs r9, 0x94f3e2d1d27de54a
xor r11, r9
mov r9, rcx
xor r9, r11
and rdx, r9
mov r9, r10
or r9, r9
xor r9, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and rdx, r9
mov r9, rcx
or r9, r10
movabs r10, 0xe2e08fe256ad9c89
movabs r11, 0x1d1f701da9526376
xor r10, r11
xor r9, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0x1948c324b070ff5d
movabs r10, 0x1948c324b070ff5d
xor r9, r10
cmp rdx, r9
setl dl
xor rcx, r8
cmp rcx, 0xffffffffffffffff
setg r8b
xor r8b, 0xff
mov cl, dl
xor cl, r8b
and cl, dl
mov byte [rbp - 9], cl
cmp eax, 0xa44a8cba
ja 0x140085637
mov al, byte [rbp - 9]
test al, 1
jne 0x140085785
jmp 0x1400857a2
sub rsp, 0x20
call fcn.1400067fe
mov rax, qword [rbp + 0x170]
add rsp, 0x20
mov qword [rbp + 0x58], rax
jmp 0x1400859b1
mov rax, qword [rbp - 0x18]
mov rdx, qword [rbp + 8]
mov rcx, qword [rbp + 0x20]
movabs r8, 0x7d78af95fa7880d
movabs r9, 0x7d78af95fa7880d
xor r8, r9
cmp rax, r8
cmove rcx, rdx
mov qword [rbp + 0x28], rcx
mov qword [rbp + 0x30], rax
jmp 0x1400852ee
mov rax, qword [rbp + 0x38]
cmp rax, 0xffffffffffffffff
mov qword [rbp + 0x58], rax
jne 0x1400859b1
mov rax, qword [rbp + 0x50]
cmp rax, 0
je 0x1400858d0
mov r8d, dword [0x1401df008]
add r8d, dword [0x1401df00c]
add r8d, 0xaf92e57b
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x10541c31
mov edx, 0xffffffff
xor edx, 0x10541c31
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xe816e69c
mov r9d, 0x5cb044ed
xor r9d, 0x4ce458dc
and ecx, r9d
and edx, 0xe816e69c
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x9992bd61
xor ecx, 0x86e40ab0
imul eax, ecx
cmp eax, 0x5cf3d6c4
je 0x1400860c0
mov eax, dword [0x1401df010]
imul eax, dword [0x1401df014]
mov ecx, 0xfb08a79d
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x50]
imul eax, eax, 0x5d1b5d73
and eax, 0xc9df69a7
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0xe180d765
ja 0x140085868
mov al, byte [rbp - 0x19]
test al, 1
jne 0x1400858bf
jmp 0x1400858d0
mov rcx, qword [rbp + 0x50]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x1f0]
mov rax, qword [rax]
mov qword [rbp - 0x28], rax
cmp rax, 0
je 0x140085914
mov rcx, qword [rbp - 0x28]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140085914
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x190]
mov rcx, qword [rax]
mov qword [rbp - 0x30], rcx
xor eax, eax
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov rcx, qword [rbp - 0x30]
mov rax, qword [rcx]
movabs r8, 0xeec4e49adf83f25d
movabs rdx, 0xaec4e49adf83f25d
xor r8, rdx
movabs rdx, 0xa5ef324eb709feba
movabs r9, 0x5a10cdb148f60145
xor rdx, r9
xor r8, rdx
mov rdx, rax
xor rdx, r8
and rdx, rax
movabs r8, 0x842afd90211b6708
movabs rax, 0x842afd90211b6708
xor r8, rax
xor eax, eax
cmp rdx, r8
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
mov rcx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x38], rax
cmp rcx, 0
mov qword [rbp + 0x160], rax
je 0x140085b4c
mov eax, dword [0x1401df018]
mov edx, dword [0x1401df01c]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0x5b8f58ea
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0xffffffff
xor edx, 0x7a6380eb
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0x315d483e
xor ecx, 0x15cedc8e
xor edx, edx
div ecx
cmp eax, 0xabc9c482
jae 0x1400860c9
mov rcx, qword [rbp + 0x50]
mov eax, dword [0x1401df020]
xor eax, 0x1b3abe0a
mov edx, dword [0x1401df024]
sub eax, 0x5371cb96
sub eax, edx
add eax, 0x5371cb96
mov r9d, 0xffffffff
xor r9d, 0x98a8a042
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
mov r9d, 0xb0efe07a
xor r9d, 0x4f101f85
xor edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x98a8a042
mov r9d, 0xa1abbfb9
xor r9d, 0x39031ffb
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0x300b7f8d
xor r8d, 0xa4fceff7
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5f14379c
and eax, r8d
or edx, 0x5f14379c
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov rdx, qword [rcx]
movabs r8, 0x4000000000000000
mov rcx, rdx
and rcx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0xe3d4f130fec265ba
movabs r8, 0xe3d4f130fec265ba
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp - 0x39], cl
cmp eax, 0x9748c9f6
jae 0x140085a16
mov rax, qword [rbp - 0x38]
mov cl, byte [rbp - 0x39]
test cl, 1
mov qword [rbp + 0x160], rax
jne 0x140085b30
jmp 0x140085b4c
mov rcx, qword [rbp + 0x50]
sub rsp, 0x20
call fcn.14000e27f
mov rax, qword [rbp - 0x38]
add rsp, 0x20
mov qword [rbp + 0x160], rax
mov rcx, qword [rbp + 0x258]
mov rax, qword [rbp + 0x160]
cmp byte [rcx], 0
mov qword [rbp + 0x110], rax
jne 0x140085e85
mov rdx, qword [rbp + 0x178]
mov rax, qword [rbp + 0x110]
mov r8, 0xffffffffffffffff
xor r8, 1
xor ecx, ecx
sub rcx, 1
sub r8, rcx
mov rcx, rdx
sub rcx, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
movabs r9, 0xdff7e8e915839744
movabs r10, 0x20081716ea7c68bb
xor r9, r10
and r9, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or r9, rdx
movabs r8, 0x4ea4a9f1cb9f4187
movabs rdx, 0xb15b560e3460be78
xor r8, rdx
mov rdx, rcx
xor rdx, r8
mov r8, r9
xor r8, 0xffffffffffffffff
or rdx, r8
movabs r10, 0x29b0c824d9f9acbc
movabs r8, 0xd64f37db26065343
xor r10, r8
mov r8, rcx
xor r8, r10
xor r9, 0xffffffffffffffff
or r8, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0xab171cf6ad11c595
movabs r10, 0x54e8e30952ee3a6a
xor r9, r10
xor r8, r9
or rdx, r8
cmp rdx, 0
mov qword [rbp + 0x1c8], rcx
mov qword [rbp + 0x1d0], rax
jge 0x140083ee0
sub rsp, 0x20
call fcn.1400067fe
add rsp, 0x20
jmp 0x140085e85
mov rax, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x220]
mov rcx, qword [rcx]
mov rdx, qword [rdx]
mov qword [rbp - 0x48], rdx
cmp rdx, 0
sete dl
mov byte [rbp - 0x3a], dl
cmp rax, rcx
jge 0x140085dc7
mov al, byte [rbp - 0x3a]
test al, 1
jne 0x140085d70
jmp 0x140085c9c
mov rcx, qword [rbp - 0x48]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xbdd7a12e6083f3e
movabs rdx, 0xbdd7a12e6083f3e
xor rcx, rdx
cmp rax, rcx
jne 0x140085d70
mov eax, dword [0x1401df028]
mov ecx, dword [0x1401df02c]
xor ecx, 0x12ab372b
imul eax, ecx
mov ecx, eax
and ecx, 0xa30ba61d
shl ecx, 1
xor eax, 0xa30ba61d
add eax, ecx
xor eax, 0x19601833
add eax, 0x81cb3131
cmp eax, 0x276570b
je 0x1400860d2
mov rcx, qword [rbp - 0x48]
mov edx, dword [0x1401df030]
sub edx, dword [0x1401df034]
mov eax, 0x1e0feadf
xor eax, 0x7b3c667e
and edx, eax
mov eax, 0x5f964672
xor eax, 0xbeebfa62
or edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0xe8343457
mov r8d, 0xffffffff
xor r8d, 0xe8343457
and edx, r8d
or eax, edx
mov dword [rbp - 0x4c], eax
sub rsp, 0x20
call fcn.14000e27f
mov eax, dword [rbp - 0x4c]
add rsp, 0x20
cmp eax, 0x7e1b82ae
ja 0x1400860d2
jmp 0x140085d70
mov rax, qword [rbp + 0x190]
mov rcx, qword [rax]
mov qword [rbp - 0x58], rcx
xor eax, eax
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov rcx, qword [rbp - 0x58]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
xor eax, eax
cmp rdx, 0
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
mov al, byte [rbp - 0x3a]
test al, 1
jne 0x140085e1d
jmp 0x140085dd7
mov rax, qword [rbp - 0x48]
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
cmp rax, 0
jne 0x140085e1d
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov rax, qword [rbp + 0x190]
mov rcx, qword [rax]
mov qword [rbp - 0x60], rcx
mov al, 1
cmp rcx, 0
mov byte [rbp + 0x213], al
je 0x140086048
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rcx]
mov rax, rdx
add rax, 1
xor rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rdx, r8
add rdx, rax
mov al, 1
cmp rdx, 0
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
je 0x140086022
jmp 0x140086048
mov rax, qword [rbp + 0x250]
mov rax, qword [rax + 8]
mov qword [rbp - 0x68], rax
cmp rax, 0
je 0x140085eca
mov rcx, qword [rbp - 0x68]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140085eca
mov rcx, qword [rbp - 0x68]
sub rsp, 0x20
call fcn.14000e27f
add rsp, 0x20
mov eax, dword [0x1401df038]
xor eax, 0xf06440d4
xor edx, edx
div dword [0x1401df03c]
mov ecx, 0xcc63da5f
xor edx, edx
div ecx
mov ecx, 0x599cc55
xor ecx, 0x1c6ae7b3
or eax, ecx
add eax, 0x6423cc14
add eax, 0xf155d6c4
mov ecx, 0xe996c919
xor ecx, 0x8db5050d
sub eax, ecx
mov ecx, 0xac1b1a9a
xor ecx, 0x8838b76f
cmp eax, ecx
jae 0x1400860db
mov rdx, qword [rbp + 0x220]
mov ecx, dword [0x1401df040]
xor ecx, 0xd5780d82
mov r9d, dword [0x1401df044]
mov r8d, 0x60d62888
xor r8d, 0x9f29d777
mov eax, ecx
xor eax, r8d
mov r8d, ecx
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
mov r8d, r9d
xor r8d, 0xffffffff
or eax, r8d
mov r10d, 0xc59b9b6a
xor r10d, 0x3a646495
mov r8d, r9d
xor r8d, r10d
xor r9d, 0xffffffff
or r8d, r9d
mov r9d, 0x528095a2
xor r9d, 0xad7f6a5d
xor ecx, r9d
mov r9d, 0xd87979f8
xor r9d, 0x27868607
xor r8d, r9d
or ecx, r8d
and eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xafa84b5
and eax, 0x8523787a
or eax, 0xcc38486a
mov ecx, 0x2ae6a1ed
xor ecx, 0x674e95c8
mov rdx, qword [rdx + 8]
mov qword [rbp - 0x78], rdx
cmp rdx, 0
sete dl
mov byte [rbp - 0x69], dl
cmp eax, ecx
jbe 0x140085f1d
mov cl, byte [rbp - 0x69]
xor eax, eax
test cl, 1
mov byte [rbp + 0x213], al
jne 0x140086048
jmp 0x140085ff0
mov rcx, qword [rbp - 0x78]
movabs rdx, 0x4000000000000000
and rdx, qword [rcx]
xor eax, eax
cmp rdx, 0
mov qword [rbp + 0x1f8], rcx
mov cl, al
mov byte [rbp + 0x206], cl
mov byte [rbp + 0x213], al
jne 0x140086048
mov rcx, qword [rbp + 0x1f8]
mov al, byte [rbp + 0x206]
mov byte [rbp - 0x79], al
sub rsp, 0x20
call fcn.14000e27f
mov al, byte [rbp - 0x79]
add rsp, 0x20
mov byte [rbp + 0x213], al
invalid
add byte [rdx + 0x21385], cl
add byte [rcx + rax], ah
mov al, byte [rbp + 0x213]
and al, 1
movzx eax, al
lea rsp, [rbp + 0x2c8]
pop rsi
pop rbp
ret
leave
je 0x140086037
jmp 0x140083978
jb 0x140086047
jmp 0x140083a78
push 0xa
invalid
or ah, byte [rdi + rdi*8 - 0x17]
add eax, 0x5fffffdb
pop rdi
loop 0x140085ffe
mov gs, ecx
sbb edi, 0x6ab5ffff
mov ch, 0x6a
invalid
insd dword [rdi], dx
xor byte [rbx + 0x4d], cl
jmp 0x1400842cb
invalid
in al, dx
mov ebx, 0xde93a24
in eax, dx
invalid
invalid
rcr cl, 0x9f
invalid
cwde
int3
invalid
xor edx, 0x44e9dc8a
stc
invalid
mov ah, 3
push 0x33
jmp 0x140085d09
jg 0x140086070
mov cl, 0x82
jmp 0x140085f1d