Function at 0x140135290
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x320
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x1c0], r9
mov qword [rbp + 0x198], r8
mov qword [rbp + 0x1c8], rdx
mov qword [rbp + 0x1a0], rcx
mov rax, qword [rbp + 0x2d0]
mov qword [rbp + 0x1b0], rax
mov eax, 0x10
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1a8], rax
sub rsp, 0x20
call fcn.140132c7b
mov rcx, qword [rbp + 0x1b0]
add rsp, 0x20
mov qword [rbp + 0x1b8], rax
mov edx, 0x20
sub rsp, 0x20
call fcn.140132d7e
add rsp, 0x20
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.140012610
mov r9, qword [rbp + 0x1c0]
mov rdx, qword [rbp + 0x1c8]
add rsp, 0x20
mov qword [rbp + 0x1d0], rax
lea rcx, [0x140253550]
mov qword [rax], rcx
mov rcx, rax
add rcx, 0x10
mov qword [rbp + 0x1d8], rcx
mov qword [rax + 0x10], r9
xor eax, eax
test rdx, rdx
cmovg rax, rdx
mov qword [rbp + 0x1e0], rax
xor eax, eax
mov rcx, rax
mov qword [rbp + 0x1e8], rcx
mov rcx, rax
mov qword [rbp + 0x1f0], rcx
mov qword [rbp + 0x1f8], rax
mov rax, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x1f0]
mov rdx, qword [rbp + 0x1f8]
mov qword [rbp + 0x180], rdx
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x190], rax
mov eax, dword [0x140253758]
imul eax, dword [0x14025375c]
mov ecx, eax
xor ecx, 0x5a2b9307
xor ecx, 0xffffffff
mov edx, 0xe670f487
xor edx, 0xbc5b6780
or eax, edx
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x53b47dd3
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x53b47dd3
add eax, edx
sub eax, ecx
mov ecx, 0x13af2531
xor ecx, 0xdd8cd96f
xor edx, edx
div ecx
mov ecx, 0xf86d1f34
xor ecx, 0x7efee396
cmp eax, ecx
ja 0x14013666e
mov rcx, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x1e0]
mov eax, dword [str.Xsh]
mov r8d, 0x17f8c354
xor r8d, 0xdc38dcd3
xor eax, r8d
mov r8d, dword [0x140253764]
xor r8d, 0x3d23d2af
or eax, r8d
mov r10d, 0xffffffff
xor r10d, 0x796d5d50
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
mov r10d, 0xf5ea9ffe
xor r10d, 0xa156001
xor r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x796d5d50
or eax, 0x796d5d50
imul eax, r9d
add eax, r8d
xor r8d, r8d
sub r8d, 0xf429d1c5
sub eax, r8d
mov r8d, 0x8ad0787a
xor r8d, 0x9a03083
or eax, r8d
cmp rcx, rdx
sete cl
mov byte [rbp + 0x17f], cl
cmp eax, 0xaee179a3
jbe 0x14013666e
mov al, byte [rbp + 0x17f]
test al, 1
jne 0x14013553d
jmp 0x1401354d0
mov rdx, qword [rbp + 0x190]
mov rax, qword [rbp + 0x180]
mov r10, qword [rbp + 0x188]
mov rcx, qword [rbp + 0x1a0]
mov r8d, dword [rcx + rdx*4]
mov r9d, 0xbed44f0c
xor r9d, 0xbed44f0c
cmp r8d, r9d
setne cl
and cl, 1
movzx ecx, cl
mov r11d, ecx
mov rcx, r10
and rcx, r11
or r10, r11
add rcx, r10
cmp r8d, r9d
cmovne rax, rdx
add rdx, 1
mov qword [rbp + 0x1e8], rdx
mov qword [rbp + 0x1f0], rcx
mov qword [rbp + 0x1f8], rax
jmp 0x140135383
mov rax, qword [rbp + 0x180]
mov rdx, qword [rbp + 0x198]
mov rcx, rax
sub rcx, rdx
cmovg rdx, rax
inc rdx
mov qword [rbp + 0x148], rdx
sub rsp, 0x20
lea rcx, [rbp + 0x260]
call fcn.140024b51
mov rdx, qword [rbp + 0x148]
add rsp, 0x20
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x150], rax
mov rax, qword [rbp + 0x268]
mov qword [rbp + 0x158], rax
sub rsp, 0x20
lea rcx, [rbp + 0x250]
call fcn.140024dfd
mov rax, qword [rbp + 0x188]
add rsp, 0x20
mov rcx, qword [rbp + 0x250]
mov qword [rbp + 0x160], rcx
mov rcx, qword [rbp + 0x258]
mov qword [rbp + 0x168], rcx
xor ecx, ecx
mov qword [rbp + 0x170], rcx
test rax, rax
je 0x140135608
jmp 0x1401355e4
mov rax, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x188]
sub rcx, 1
mov qword [rbp + 0x140], rax
je 0x140135620
jmp 0x1401356ca
mov rax, qword [rbp + 0x168]
mov byte [rax + 8], 1
mov cl, 0x87
xor cl, 0x86
mov byte [rax + 9], cl
jmp 0x1401362f1
mov rcx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x140]
mov qword [rbp + 0x138], rax
cmp rax, rcx
je 0x1401362f1
mov rax, qword [rbp + 0x1a0]
mov rcx, qword [rbp + 0x138]
cmp dword [rax + rcx*4], 0
je 0x1401356a9
mov rax, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x168]
mov byte [rcx + rax + 8], 1
movabs rcx, 0x5380bc113e9e45af
movabs rdx, 0x5380bc113e9e45af
xor rcx, rdx
cmp rax, rcx
jne 0x140135699
mov rax, qword [rbp + 0x168]
mov byte [rax + 9], 1
jmp 0x1401362f1
mov rax, qword [rbp + 0x168]
mov byte [rax + 8], 1
jmp 0x1401362f1
mov rcx, qword [rbp + 0x138]
mov rax, rcx
and rax, 1
or rcx, 1
add rax, rcx
mov qword [rbp + 0x140], rax
jmp 0x140135620
mov qword [rbp + 0x240], 0
lea rax, [rbp + 0x240]
add rax, 8
mov qword [rbp + 0x128], rax
mov qword [rbp + 0x248], 0
xor eax, eax
mov qword [rbp + 0x130], rax
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0x120], rax
mov ecx, dword [0x140253768]
sub ecx, dword [0x14025376c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x108e350f
xor edx, 0xef71caf0
xor ecx, edx
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x671e348a
mov edx, 0x683fda0b
xor edx, 0xf21ee81
mov r8d, 0x7e3e4f02
xor r8d, 0x81c1b0fd
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xbd45c46f
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xbd45c46f
mov r8d, 0xa6088f80
xor r8d, 0x1b4d4bef
or eax, r8d
imul eax, edx
add eax, ecx
imul eax, eax, 0xe1fbc1ae
cmp eax, 0x404441b8
jb 0x140136677
mov rdx, qword [rbp + 0x120]
mov r8, qword [rbp + 0x1e0]
mov eax, dword [0x140253770]
mov ecx, dword [0x140253774]
xor ecx, 0x22008ac3
sub eax, ecx
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x81a79d0f
mov r10d, 0xffffffff
xor r10d, 0x81a79d0f
mov ecx, eax
and ecx, r10d
imul ecx, r9d
mov r9d, eax
and r9d, 0x81a79d0f
or eax, 0x81a79d0f
imul eax, r9d
add eax, ecx
imul eax, eax, 0x8c801c5e
mov r10d, 0x2158981a
xor r10d, 0xc3749bce
mov ecx, 0xc97d3ee7
xor ecx, 0x3682c118
xor r10d, ecx
mov r9d, eax
and r9d, r10d
mov ecx, eax
or ecx, r10d
xor ecx, 0xffffffff
imul ecx, r9d
mov r10d, 0x6307d61f
xor r10d, 0x812bd5cb
mov r9d, eax
and r9d, r10d
mov r10d, 0x8bb8248f
xor r10d, 0x6994275b
or eax, r10d
imul eax, r9d
add eax, ecx
mov ecx, 0x241d49ba
xor ecx, 0xde604780
cmp rdx, r8
sete dl
mov byte [rbp + 0x11f], dl
cmp eax, ecx
jae 0x1401357a4
mov al, byte [rbp + 0x11f]
test al, 1
jne 0x140135950
jmp 0x14013588d
mov rax, qword [rbp + 0x1a0]
mov rcx, qword [rbp + 0x120]
mov eax, dword [rax + rcx*4]
mov dword [rbp + 0x118], eax
mov ecx, 0xcef87f9
xor ecx, 0xcef87f9
cmp eax, ecx
je 0x14013591f
movabs rcx, 0x834470320577a4e6
movabs rax, 0x834470320577a4c6
xor rcx, rax
movabs rdx, 0x6a93fe0fa9a3976b
movabs rax, 0x6a93fe0fa9a39763
xor rdx, rax
sub rsp, 0x20
call fcn.140012610
mov rcx, qword [rbp + 0x120]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x118]
mov qword [rdx], rcx
mov eax, eax
mov qword [rdx + 8], rax
lea rcx, [rbp + 0x240]
sub rsp, 0x20
call fcn.140024e27
add rsp, 0x20
mov rax, qword [rbp + 0x120]
movabs rcx, 0xe6526e39a773eb37
add rax, rcx
add rax, 1
movabs rcx, 0xe6526e39a773eb37
sub rax, rcx
mov qword [rbp + 0x130], rax
jmp 0x1401356fb
movabs rdx, 0x4653ba19d5583960
movabs rax, 0x4653ba19d5583970
xor rdx, rax
lea rcx, [rbp + 0x230]
sub rsp, 0x20
call fcn.140132d7e
mov rcx, qword [rbp + 0x1a8]
mov rdx, qword [rbp + 0x1d0]
add rsp, 0x20
mov rax, qword [rbp + 0x240]
mov qword [rcx], rax
mov rax, qword [rbp + 0x248]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401348b0
mov rcx, qword [rbp + 0x1b8]
add rsp, 0x20
mov byte [rbp + 0x116], al
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x117], al
jne 0x140136281
mov al, byte [rbp + 0x116]
test al, 1
jne 0x1401359dc
jmp 0x140136210
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x240]
mov rax, qword [rax]
mov qword [rbp + 0xf0], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0xf8], rax
xor eax, eax
mov rcx, rax
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
mov rcx, qword [rbp + 0xf8]
mov rdx, qword [rbp + 0x100]
mov rax, qword [rbp + 0x108]
mov qword [rbp + 0xe0], rax
mov qword [rbp + 0xe8], rdx
cmp rax, rcx
je 0x140135a98
mov rax, qword [rbp + 0xe0]
mov rdx, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0xf0]
mov rcx, qword [rcx + rax*8 + 8]
mov rcx, qword [rcx + 8]
mov r8, rdx
sub r8, rcx
cmovg rcx, rdx
movabs rdx, 0x47f33c66f7e1b766
movabs r8, 0x47f33c66f7e1b767
xor rdx, r8
add rax, rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x140135a17
mov rdx, qword [rbp + 0xe8]
movabs rax, 0xe6e5bfd25615c5cc
movabs rcx, 0x42edafa5b9cff314
xor rax, rcx
add rdx, rax
movabs rax, 0xb0359186d968f9b8
movabs rcx, 0xb0359186d968f9b9
xor rax, rcx
add rdx, rax
movabs rax, 0xa4081077efda36d8
sub rdx, rax
lea rcx, [rbp + 0x220]
sub rsp, 0x20
call fcn.140025530
mov rax, qword [rbp + 0x128]
add rsp, 0x20
mov rcx, qword [rbp + 0x220]
mov qword [rbp + 0xb8], rcx
mov rcx, qword [rbp + 0x228]
mov qword [rbp + 0xc0], rcx
mov rcx, qword [rbp + 0x240]
mov rax, qword [rax]
mov qword [rbp + 0xc8], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0xd0], rax
xor eax, eax
mov qword [rbp + 0xd8], rax
mov rax, qword [rbp + 0xe8]
mov rdx, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0xd8]
mov qword [rbp + 0xa8], rcx
cmp rcx, rdx
mov qword [rbp + 0xb0], rax
je 0x140135d2c
mov rax, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xc8]
mov rdx, qword [rdx + rax*8 + 8]
mov rdx, qword [rdx + 8]
mov r8, qword [rcx + rdx*8 + 8]
movabs r9, 0x17fd82dffc81736b
movabs r10, 0x17fd82dffc81736b
xor r9, r10
sub r9, r8
xor r8d, r8d
sub r8, 1
add r9, r8
movabs r8, 0x262008bc0c7c7941
movabs r10, 0x262008bc0c7c7941
xor r8, r10
sub r8, r9
mov qword [rcx + rdx*8 + 8], r8
add rax, 1
mov qword [rbp + 0xd8], rax
jmp 0x140135b41
mov rax, qword [rbp + 0x1d8]
mov rcx, qword [rbp + 0xa0]
cmp qword [rax], rcx
jge 0x140135f0b
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x80]
mov rcx, qword [rcx]
mov qword [rbp + 0x90], rcx
cmp rcx, 0
mov qword [rbp + 0x98], rax
jne 0x140135d9b
mov eax, dword [0x140253778]
mov r8d, dword [0x14025377c]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xc8861c80
xor edx, edx
div ecx
sub eax, 0x6dfe19fb
sub eax, 0xefaa1f05
add eax, 0x6dfe19fb
imul eax, eax, 0xda742d7b
cmp eax, 0x26de227a
je 0x140136680
mov eax, dword [0x140253780]
mov ecx, dword [0x140253784]
mov edx, 0x4f61ba5
xor edx, 0x387cc15b
xor ecx, edx
and eax, ecx
mov ecx, 0x2823f61c
xor edx, edx
div ecx
mov rdx, qword [rbp + 0xa0]
and eax, 0x76951351
sub eax, 0xd9b78ac1
add eax, 0x8d12afb9
mov ecx, 0x734cb546
xor ecx, 0xaafb3f87
add eax, ecx
mov ecx, 0x65bfd58d
xor ecx, 0x581f833
xor r8d, r8d
sub r8, rdx
movabs rdx, 0xe58972a818c89cac
movabs r9, 0xe58972a818c89cac
xor rdx, r9
movabs r9, 0xcbf7196092f55a9c
movabs r10, 0x3408e69f6d0aa563
xor r9, r10
sub rdx, r9
add r8, rdx
xor edx, edx
sub rdx, r8
mov qword [rbp + 0x78], rdx
cmp eax, ecx
jb 0x140136680
mov rax, qword [rbp + 0x78]
mov qword [rbp + 0xb0], rax
jmp 0x140135d2c
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xb0]
mov qword [rbp + 0xa0], rcx
mov rdx, rax
add rdx, 8
mov r8, rcx
shl r8, 3
add rdx, r8
mov qword [rbp + 0x80], rdx
mov r8, rcx
add r8, 0xfffffffffffffffe
mov qword [rbp + 0x88], r8
mov rdx, r8
sar rdx, 0x3f
and rdx, r8
mov qword [rbp + 0x68], rdx
mov rdx, rcx
and rdx, 0xffffffffffffffff
shl rdx, 1
xor rcx, 0xffffffffffffffff
add rcx, rdx
add rax, 8
shl rcx, 3
add rax, rcx
mov qword [rbp + 0x70], rax
jmp 0x140135be3
mov rax, qword [rbp + 0x98]
mov qword [rbp + 0x60], rax
mov ecx, dword [0x140253788]
mov r8d, dword [0x14025378c]
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov r9d, r8d
xor r9d, 0xffffffff
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xb1eb52cf
mov edx, 0xffffffff
xor edx, 0xb1eb52cf
and ecx, edx
sub ecx, eax
sub ecx, 0xe77c0476
mov edx, 0xffffffff
xor edx, 0x1bf47329
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0xe1461afd
je 0x140136689
mov rcx, qword [rbp + 0x60]
mov eax, dword [0x140253790]
imul eax, dword [0x140253794]
mov r8d, 0xcf2682fd
xor edx, edx
div r8d
mov r8d, 0x5eeec681
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x98dd0533
mov r8d, 0x707621f5
xor r8d, 0xe8ab24c6
mov r9d, 0x5f9707b5
xor r9d, 0xa068f84a
xor r8d, r9d
and edx, r8d
or eax, edx
cmp rcx, 0
setg cl
mov byte [rbp + 0x5f], cl
cmp eax, 0x9cb55c4e
je 0x140136689
mov rax, qword [rbp + 0x68]
mov cl, byte [rbp + 0x5f]
test cl, 1
mov qword [rbp + 0x50], rax
jne 0x140135e97
jmp 0x140135ec3
mov rax, qword [rbp + 0x60]
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rcx + rax*8 + 8]
mov rcx, rax
add rcx, 0xffffffffffffffff
cmp rdx, 0
mov qword [rbp + 0x98], rcx
mov qword [rbp + 0x50], rax
je 0x140135d9b
mov rax, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0x70]
mov r8, qword [rbp + 0x80]
mov r9, qword [rbp + 0x90]
mov rcx, qword [rbp + 0x50]
add r9, 0xfffffffffffffffe
mov qword [r8], r9
mov r8, qword [rdx]
inc r8
mov qword [rdx], r8
movups xmm0, xmmword [rax + rcx*8 + 8]
movaps xmm1, xmmword [0x1402633a0]
paddq xmm0, xmm1
movdqu xmmword [rax + rcx*8 + 8], xmm0
jmp 0x140135be3
mov r8d, dword [0x140253798]
mov edx, dword [0x14025379c]
xor edx, 0xd4bbf16a
mov eax, r8d
xor eax, 0xffffffff
mov ecx, 0x779adaa5
xor ecx, 0xdae677b4
and ecx, eax
mov r9d, 0xffffffff
xor r9d, 0xad7cad11
and r8d, r9d
mov eax, edx
xor eax, 0xffffffff
and eax, 0xad7cad11
and edx, r9d
or ecx, r8d
or eax, edx
xor ecx, eax
mov edx, 0x9c4db98b
xor edx, 0x63b24674
mov eax, ecx
xor eax, edx
and eax, 0x1ed3d1ad
mov edx, 0xffffffff
xor edx, 0x1ed3d1ad
and ecx, edx
or eax, ecx
mov ecx, 0xfcdaa8df
xor edx, edx
div ecx
mov r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0x98adc8e3
xor eax, 0x3f384505
and eax, ecx
mov edx, 0xffffffff
xor edx, 0xa7958de6
and r8d, edx
mov ecx, 0x9fc24323
xor ecx, 0x4a3f0c12
mov r9d, 0xac2bbe9e
xor r9d, 0x53d44161
xor ecx, r9d
and ecx, 0xa7958de6
and edx, 0xd5fd4f31
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0x9029eb0c
je 0x140136692
mov eax, dword [0x1402537a0]
xor eax, 0xe456d19d
imul eax, dword [0x1402537a4]
mov ecx, 0xc3227cd5
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x4cb06f50
mov r8d, 0xffffffff
xor r8d, 0x4cb06f50
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x4cb06f50
or eax, 0x4cb06f50
imul eax, edx
add eax, ecx
mov r8d, 0x36b0b315
xor r8d, 0xf5d827c7
mov ecx, 0xbc0fcdc
xor ecx, 0xf43f0323
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xc36894d2
mov r8d, 0x920cdb55
xor r8d, 0x51644f87
or eax, r8d
imul eax, edx
add eax, ecx
mov dword [rbp + 0x48], eax
mov eax, 0xaddb4633
xor eax, 0x200be88c
mov dword [rbp + 0x44], eax
mov r8, qword [rbp + 0x240]
movabs rax, 0x64af217ccff1cf0e
movabs rcx, 0x9b50de83300e30f1
xor rax, rcx
add r8, rax
lea rcx, [rbp + 0x240]
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.140134d20
mov rdx, qword [rbp + 0x1b8]
mov ecx, dword [rbp + 0x44]
mov eax, dword [rbp + 0x48]
add rsp, 0x20
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0x4f], dl
cmp eax, ecx
ja 0x140135fdd
mov al, byte [rbp + 0x4f]
test al, 1
jne 0x1401360e9
jmp 0x1401361c8
mov rax, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x240]
mov rax, qword [rax]
mov qword [rbp + 0x20], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x28], rax
mov ecx, 1
xor eax, eax
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x38], rax
mov rdx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp + 0x38]
mov qword [rbp + 0x10], rcx
cmp rcx, rdx
mov qword [rbp + 0x18], rax
je 0x1401361c8
mov rax, qword [rbp + 0x18]
mov rcx, qword [rbp + 0xc0]
mov qword [rbp + 8], rax
mov rcx, qword [rcx + rax*8 + 8]
add rax, 1
cmp rcx, 0
mov qword [rbp + 0x18], rax
je 0x140136137
mov rcx, qword [rbp + 8]
mov rax, qword [rbp + 0x10]
mov rdx, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x20]
mov r8, qword [r8 + rax*8 + 8]
mov qword [r8 + 8], rcx
mov r8, qword [rdx + rcx*8 + 8]
add r8, 0xffffffffffffffff
mov qword [rdx + rcx*8 + 8], r8
movabs rdx, 0xc1922e65ea103eb
sub rax, rdx
movabs rdx, 0x14705ecdb603468c
movabs r8, 0x14705ecdb603468d
xor rdx, r8
add rax, rdx
movabs rdx, 0xc1922e65ea103eb
add rax, rdx
mov qword [rbp + 0x30], rcx
mov qword [rbp + 0x38], rax
jmp 0x14013611a
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xb8]
mov qword [rbp + 0x210], rcx
mov qword [rbp + 0x218], rax
lea rcx, [rbp + 0x210]
sub rsp, 0x20
call fcn.14005f308
mov rcx, qword [rbp + 0x1b8]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x117], al
jne 0x140136281
mov rcx, qword [rbp + 0x240]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp - 8], rax
xor eax, eax
mov qword [rbp], rax
mov rcx, qword [rbp - 8]
mov rax, qword [rbp]
mov qword [rbp - 0x10], rax
cmp rax, rcx
je 0x140136272
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp + 0x168]
mov rdx, qword [rbp + 0x128]
mov rdx, qword [rdx]
mov rdx, qword [rdx + rax*8 + 8]
mov r8, qword [rdx + 8]
mov rdx, qword [rdx]
mov byte [rcx + rdx + 8], r8b
add rax, 1
mov qword [rbp], rax
jmp 0x14013622a
mov rax, qword [rbp + 0x1b8]
mov al, byte [rax]
mov byte [rbp + 0x117], al
mov rax, qword [rbp + 0x1b8]
mov cl, byte [rbp + 0x117]
mov byte [rbp - 0x11], cl
mov cl, 0x54
xor cl, 0x54
mov byte [rax], cl
mov rax, qword [rbp + 0x240]
mov qword [rbp + 0x200], rax
mov rax, qword [rbp + 0x248]
mov qword [rbp + 0x208], rax
lea rcx, [rbp + 0x200]
sub rsp, 0x20
call fcn.1401324a6
mov rax, qword [rbp + 0x1b8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401362ec
mov al, byte [rbp - 0x11]
mov rcx, qword [rbp + 0x1b8]
mov byte [rcx], al
cmp al, 0
je 0x1401362f1
jmp 0x140136654
movabs rdx, 0x75cf97bc88808988
movabs rax, 0x75cf97bc88808998
xor rdx, rax
lea rcx, [rbp + 0x290]
sub rsp, 0x20
call fcn.140132d7e
mov rcx, qword [rbp + 0x160]
add rsp, 0x20
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp - 0x28], rax
xor eax, eax
mov qword [rbp - 0x20], rax
mov rcx, qword [rbp - 0x28]
mov rax, qword [rbp - 0x20]
mov qword [rbp - 0x30], rax
cmp rax, rcx
je 0x140136384
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp + 0x168]
movzx ecx, byte [rcx + rax + 8]
mov r8b, byte [rbp + rcx + 0x290]
mov dl, r8b
and dl, 1
or r8b, 1
add dl, r8b
mov byte [rbp + rcx + 0x290], dl
add rax, 1
mov qword [rbp - 0x20], rax
jmp 0x140136336
mov al, 0xa
xor al, 0xa
mov byte [rbp + 0x290], al
lea rcx, [rbp + 0x270]
mov edx, 0x20
sub rsp, 0x20
call fcn.140132d7e
add rsp, 0x20
mov eax, 1
mov qword [rbp - 0x38], rax
mov rax, qword [rbp - 0x38]
mov qword [rbp - 0x40], rax
mov ecx, dword [0x1402537a8]
mov eax, dword [0x1402537ac]
xor eax, 0x5bcfc104
sub ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x1cd9bf28
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
mov r8d, 0x51b28158
xor r8d, 0xae4d7ea7
xor eax, r8d
imul eax, edx
mov edx, ecx
and edx, 0x1cd9bf28
or ecx, 0x1cd9bf28
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0xda994313
mov edx, 0xa32e6fb6
xor edx, 0x79b72ca5
or ecx, edx
add eax, ecx
mov ecx, 0xd37d3005
xor ecx, 0xda09346b
add eax, ecx
cmp eax, 0x4565d478
jb 0x14013669b
mov eax, dword [0x1402537b0]
mov ecx, dword [0x1402537b4]
add eax, 0xa923091f
sub eax, ecx
sub eax, 0xa923091f
imul eax, eax, 0x323c49c7
mov ecx, 0xe22ddb49
xor edx, edx
div ecx
mov ecx, 0x5dfd0b8d
xor edx, edx
div ecx
mov rdx, qword [rbp - 0x40]
mov ecx, 0x463cc88b
xor ecx, 0x1677d563
cmp rdx, 0x10
sete dl
mov byte [rbp - 0x41], dl
cmp eax, ecx
je 0x140136436
mov al, byte [rbp - 0x41]
test al, 1
jne 0x140136497
jmp 0x1401364b6
mov rcx, qword [rbp + 0x150]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp - 0x58], rax
xor eax, eax
mov qword [rbp - 0x50], rax
jmp 0x140136511
mov rax, qword [rbp - 0x40]
mov dx, word [rbp + rax*2 + 0x26e]
movzx ecx, byte [rbp + rax + 0x28f]
mov r8w, 0xffb6
xor r8w, 0x6a58
add dx, r8w
add dx, cx
mov cx, 0x2114
xor cx, 0xb4fa
sub dx, cx
mov cx, 0x59f9
xor cx, 0x59f8
shl dx, cl
mov cx, dx
mov word [rbp + rax*2 + 0x270], cx
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov qword [rbp - 0x38], rax
jmp 0x1401363b0
mov rcx, qword [rbp - 0x58]
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x60], rax
cmp rax, rcx
je 0x140136622
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp - 0x60]
mov rdx, rax
add rdx, 8
add rdx, rcx
mov qword [rbp - 0x70], rdx
mov al, byte [rax + rcx + 8]
mov byte [rbp - 0x61], al
cmp al, 0
je 0x1401365d6
mov al, byte [rbp - 0x61]
movzx eax, al
mov cx, word [rbp + rax*2 + 0x270]
sub rsp, 0x20
call fcn.140034a90
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x1b8]
mov word [rbp - 0x72], cx
cmp byte [rax], 0
jne 0x140136654
mov rax, qword [rbp - 0x70]
mov rdx, qword [rbp - 0x60]
mov cx, word [rbp - 0x72]
movzx r8d, cx
mov r9b, byte [rax]
mov cl, 0x10
sub cl, 0x3f
sub cl, r9b
add cl, 0x3f
movzx ecx, cl
shr r8d, cl
mov rcx, qword [rbp + 0x158]
mov word [rcx + rdx*2 + 8], r8w
movzx eax, byte [rax]
mov cx, word [rbp + rax*2 + 0x270]
mov dx, cx
and dx, 1
shl dx, 1
xor cx, 1
add cx, dx
mov word [rbp + rax*2 + 0x270], cx
mov rax, qword [rbp - 0x60]
movabs rdx, 0x22106fe2a5c0fd98
movabs rcx, 0x22106fe2a5c0fd99
xor rdx, rcx
mov rcx, rax
and rcx, rdx
movabs rdx, 0xad950f6a75815441
movabs r8, 0xad950f6a75815443
xor rdx, r8
imul rcx, rdx
xor rax, 1
add rax, rcx
mov qword [rbp - 0x50], rax
jmp 0x140136511
mov rax, qword [rbp + 0x1b0]
mov rcx, qword [rbp + 0x168]
mov rdx, qword [rbp + 0x160]
mov r8, qword [rbp + 0x158]
mov r9, qword [rbp + 0x150]
mov qword [rax], r9
mov qword [rax + 8], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov rcx, qword [rbp + 0x1d0]
sub rsp, 0x20
call fcn.140135130
nop
lea rsp, [rbp + 0x2a0]
pop rbp
ret
invalid
cdq
adc eax, 0x24e9e821
int1
invalid
xor dword [rcx - 0x9168a17], 0x7efffff5
sub al, 0xa2
push rcx
jmp 0x140135e14
jle 0x1401366b7
movabs byte [0xf023fffff782e951], al
and esi, eax
outsb dx, byte [rsi]
xchg edi, eax
jmp 0x140135fdd
xor al, 0xf6
bnd ja 0x140136689
xchg edx, eax
std
invalid
push r12
push rsi
push rdi
push rbx
sub rsp, 0xbd8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x4a0], r9
mov qword [rbp + 0x450], r8
mov qword [rbp + 0x458], rdx
mov qword [rbp + 0x460], rcx
mov eax, 0x10
mov qword [rbp + 0x488], rax
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x488]
mov rcx, rsp
mov qword [rbp + 0x4a8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x468], rax
mov eax, 0x140
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x470], rax
mov eax, 0x30
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x488]
mov rcx, rsp
mov qword [rbp + 0x478], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x488]
mov rcx, rsp
mov qword [rbp + 0x480], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x488]
mov rcx, rsp
mov qword [rbp + 0x490], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x498], rax
sub rsp, 0x20
call fcn.140132c7b
mov r9, qword [rbp + 0x4a0]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x4a8]
mov qword [rbp + 0x4b0], rcx
mov qword [rax], 0
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x4b8], rcx
mov qword [rax + 8], 0
movabs rax, 0x4dbd804cc700bd3c
movabs rcx, 0xb2427fb338ff42ca
xor rax, rcx
add r9, rax
cmp r9, 0xfffffffffffffff4
jae 0x14013688d
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140012610
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402646b8]
mov qword [rcx], rax
lea rax, [0x1402633cc]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140263430]
mov qword [rcx + 0x18], rax
mov rax, qword [str._4_]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xd4aace5eb8b8f644
movabs rdx, 0xd4aace5ee4528348
xor rax, rdx
lea rdx, [0x1402633cc]
lea r8, [0x1402633d7]
lea r9, [0x1402633df]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14001203f
add rsp, 0x30
jmp 0x140139927
mov rsi, qword [rbp + 0x450]
lea rcx, [rbp + 0xb48]
mov edx, 0x10
sub rsp, 0x20
call fcn.140132d7e
mov rcx, qword [rbp + 0x460]
mov r9, qword [rbp + 0x468]
mov r8, qword [rbp + 0x4a0]
mov rdx, qword [rbp + 0x480]
mov rax, qword [rbp + 0x498]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp + 0xb48], rcx
movabs rcx, 0x9ae814f71d8cd1ac
movabs r10, 0x9ae814f71db32e53
xor rcx, r10
mov r10, rsi
and r10, rcx
mov rcx, rsi
or rcx, 0x3fffff
add r10, rcx
movabs rcx, 0x5e4fac843ec76330
movabs r11, 0x5e4fac843ec76326
xor rcx, r11
shr r10, cl
mov rcx, qword [rbp + 0x490]
mov r11d, 1
cmp rsi, 1
cmovl r10, r11
mov qword [rbp + 0x378], r10
mov qword [rbp + 0xb40], 0
movabs r11, 0x48ddaae98b51a155
movabs rsi, 0xb722551674ae5eaa
xor r11, rsi
add r10, r11
mov qword [rbp + 0x380], r10
cmp r8, 0xfffffffffffffffe
sete r10b
mov byte [rbp + 0x38f], r10b
lea r10, [rbp + 0x608]
add r10, 0x4f0
mov qword [rbp + 0x390], r10
lea r10, [rbp + 0x5f8]
add r10, 8
mov qword [rbp + 0x398], r10
lea r10, [rbp + 0x5e8]
add r10, 8
mov qword [rbp + 0x3a0], r10
add r9, 8
mov qword [rbp + 0x3a8], r9
lea r9, [rbp + 0x5d8]
add r9, 8
mov qword [rbp + 0x3b0], r9
movabs r9, 0xa7904ba9e065e001
movabs r10, 0xa7904ba9e065e006
xor r9, r10
cmp r8, r9
setl r8b
mov byte [rbp + 0x3bf], r8b
lea r8, [rbp + 0xb20]
add r8, 8
mov qword [rbp + 0x3c0], r8
lea r8, [rbp + 0xb20]
add r8, 0x10
mov qword [rbp + 0x3c8], r8
lea r8, [rbp + 0xb20]
add r8, 0x18
mov qword [rbp + 0x3d0], r8
lea r8, [rbp + 0x608]
add r8, 0x478
mov qword [rbp + 0x3d8], r8
lea r8, [rbp + 0xb00]
add r8, 8
mov qword [rbp + 0x3e0], r8
lea r8, [rbp + 0xb00]
add r8, 0x10
mov qword [rbp + 0x3e8], r8
lea r8, [rbp + 0xb00]
add r8, 0x18
mov qword [rbp + 0x3f0], r8
lea r8, [rbp + 0x588]
add r8, 8
mov qword [rbp + 0x3f8], r8
lea r8, [rbp + 0x568]
add r8, 8
mov qword [rbp + 0x400], r8
lea r8, [rbp + 0x568]
add r8, 0x10
mov qword [rbp + 0x408], r8
lea r8, [rbp + 0x568]
add r8, 0x18
mov qword [rbp + 0x410], r8
lea r8, [rbp + 0x500]
add r8, 8
mov qword [rbp + 0x418], r8
lea r8, [rbp + 0x4f0]
add r8, 8
mov qword [rbp + 0x420], r8
add rdx, 8
mov qword [rbp + 0x428], rdx
lea rdx, [rbp + 0x4d0]
add rdx, 8
mov qword [rbp + 0x430], rdx
add rcx, 8
mov qword [rbp + 0x438], rcx
add rax, 8
mov qword [rbp + 0x440], rax
xor eax, eax
mov qword [rbp + 0x448], rax
mov rcx, qword [rbp + 0x378]
mov rax, qword [rbp + 0x448]
mov qword [rbp + 0x370], rax
cmp rax, rcx
je 0x1401398e2
lea rcx, [rbp + 0xb20]
mov edx, 0x20
sub rsp, 0x20
call fcn.140132d7e
add rsp, 0x20
lea rcx, [rbp + 0xb00]
mov edx, 0x20
sub rsp, 0x20
call fcn.140132d7e
mov r8, qword [rbp + 0x450]
mov rcx, qword [rbp + 0x380]
mov rax, qword [rbp + 0x370]
add rsp, 0x20
mov rdx, rax
shl rdx, 0x16
mov qword [rbp + 0x318], rdx
sub r8, rdx
mov rdx, r8
sub rdx, 0x400000
mov edx, 0x400000
cmovl rdx, r8
mov qword [rbp + 0x320], rdx
cmp rax, rcx
sete al
mov byte [rbp + 0x317], al
mov qword [rbp + 0xb40], 0
lea rcx, [rbp + 0x608]
mov edx, 0x4f8
sub rsp, 0x20
call fcn.140132d7e
mov rcx, qword [rbp + 0x4a8]
mov r11, qword [rbp + 0x458]
mov r10, qword [rbp + 0x318]
mov rax, qword [rbp + 0x320]
add rsp, 0x20
lea rdx, [rbp + 0xb40]
mov r8, qword [str._3_]
lea r9, [rbp + 0x608]
sub rsp, 0x40
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rax
call fcn.14012e840
mov rcx, qword [rbp + 0x4b0]
add rsp, 0x40
xor eax, eax
mov qword [rbp + 0x328], rax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x330], rcx
mov rcx, rax
mov qword [rbp + 0x338], rcx
mov rcx, rax
mov qword [rbp + 0x340], rcx
mov rcx, rax
mov qword [rbp + 0x348], rcx
mov rcx, rax
mov qword [rbp + 0x350], rcx
mov rcx, rax
mov qword [rbp + 0x358], rcx
mov rcx, rax
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x140139790
mov al, byte [rbp + 0x38f]
test al, 1
jne 0x140136e6c
jmp 0x140136c9f
mov rax, qword [rbp + 0x390]
mov rcx, qword [rbp + 0x320]
cvtsi2ss xmm0, rcx
cvtss2sd xmm0, xmm0
movsd xmm1, qword [0x1402633b0]
mulsd xmm0, xmm1
cvttsd2si rcx, xmm0
cmp qword [rax], rcx
jl 0x140136e6c
mov r9, qword [rbp + 0x318]
mov r8, qword [rbp + 0x458]
mov rdx, qword [rbp + 0x460]
mov rcx, qword [rbp + 0x320]
mov r10b, byte [rbp + 0x317]
sub rsp, 0x30
and r10b, 1
mov rax, rsp
mov byte [rax + 0x28], r10b
mov qword [rax + 0x20], rcx
lea rcx, [rbp + 0xb48]
call fcn.1401328b0
mov rcx, qword [rbp + 0x4b0]
add rsp, 0x30
xor eax, eax
mov qword [rbp + 0x308], rax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x330], rcx
mov rcx, rax
mov qword [rbp + 0x338], rcx
mov rcx, rax
mov qword [rbp + 0x340], rcx
mov rcx, rax
mov qword [rbp + 0x348], rcx
mov rcx, rax
mov qword [rbp + 0x350], rcx
mov rcx, rax
mov qword [rbp + 0x358], rcx
mov rcx, rax
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x140139790
mov rax, qword [rbp + 0x398]
mov qword [rbp + 0x5f8], 0
mov qword [rax], 0
lea rcx, [rbp + 0x5f8]
sub rsp, 0x20
call fcn.140021670
mov rax, qword [rbp + 0x3a0]
add rsp, 0x20
mov qword [rbp + 0x5e8], 0
mov qword [rax], 0
lea rcx, [rbp + 0x5e8]
sub rsp, 0x20
call fcn.140024af2
add rsp, 0x20
lea rcx, [rbp + 0xb00]
sub rsp, 0x20
call fcn.140132c96
mov rax, qword [rbp + 0x3a8]
mov rcx, qword [rbp + 0x468]
add rsp, 0x20
mov qword [rcx], 0
mov qword [rax], 0
sub rsp, 0x20
call fcn.140021670
mov rax, qword [rbp + 0x3b0]
add rsp, 0x20
movabs rcx, 0x8cf84312896e920a
movabs rdx, 0x8cf84312896e920a
xor rcx, rdx
mov qword [rbp + 0x5d8], rcx
mov qword [rax], 0
lea rcx, [rbp + 0x5d8]
sub rsp, 0x20
call fcn.140024af2
add rsp, 0x20
lea rcx, [rbp + 0xb20]
sub rsp, 0x20
call fcn.140132c96
add rsp, 0x20
jmp 0x1401398b8
mov al, byte [rbp + 0x3bf]
mov rcx, qword [rbp + 0x320]
sub rcx, 0x801
setl cl
and al, cl
mov byte [rbp + 0x307], al
test al, 1
jne 0x140136e98
jmp 0x140136f09
lea rcx, [rbp + 0x5b8]
mov edx, 0x20
sub rsp, 0x20
call fcn.140132d7e
add rsp, 0x20
lea rcx, [0x1402633f0]
lea rdx, [rbp + 0x5b8]
sub rsp, 0x20
call fcn.140132ce1
add rsp, 0x20
mov rax, qword [rbp + 0x5b8]
mov qword [rbp + 0xb20], rax
mov rax, qword [rbp + 0x5c0]
mov qword [rbp + 0xb28], rax
mov rax, qword [rbp + 0x5c8]
mov qword [rbp + 0xb30], rax
mov rax, qword [rbp + 0x5d0]
mov qword [rbp + 0xb38], rax
jmp 0x140136fa0
lea rcx, [rbp + 0x608]
mov edx, 0x11e
mov r8d, 0x101
mov r9d, 0xf
lea rax, [rbp + 0xb20]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140135290
mov rcx, qword [rbp + 0x4b0]
add rsp, 0x30
xor eax, eax
mov qword [rbp + 0x2f8], rax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x330], rcx
mov rcx, rax
mov qword [rbp + 0x338], rcx
mov rcx, rax
mov qword [rbp + 0x340], rcx
mov rcx, rax
mov qword [rbp + 0x348], rcx
mov rcx, rax
mov qword [rbp + 0x350], rcx
mov rcx, rax
mov qword [rbp + 0x358], rcx
mov rcx, rax
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x140139790
mov rax, qword [rbp + 0x3c0]
mov rcx, qword [rbp + 0xb20]
mov qword [rbp + 0x2d8], rcx
mov rax, qword [rax]
mov qword [rbp + 0x2e0], rax
lea rcx, [rbp + 0xb20]
sub rsp, 0x20
call fcn.140025608
mov rax, qword [rbp + 0x3d0]
mov rcx, qword [rbp + 0x3c8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x2e8], rdx
mov rax, qword [rax]
mov qword [rbp + 0x2f0], rax
sub rsp, 0x20
call fcn.14002562b
mov al, byte [rbp + 0x307]
add rsp, 0x20
test al, 1
jne 0x140137015
jmp 0x140137086
lea rcx, [rbp + 0x598]
mov edx, 0x20
sub rsp, 0x20
call fcn.140132d7e
add rsp, 0x20
lea rcx, [0x140263410]
lea rdx, [rbp + 0x598]
sub rsp, 0x20
call fcn.140132ce1
add rsp, 0x20
mov rax, qword [rbp + 0x598]
mov qword [rbp + 0xb00], rax
mov rax, qword [rbp + 0x5a0]
mov qword [rbp + 0xb08], rax
mov rax, qword [rbp + 0x5a8]
mov qword [rbp + 0xb10], rax
mov rax, qword [rbp + 0x5b0]
mov qword [rbp + 0xb18], rax
jmp 0x140137131
mov rcx, qword [rbp + 0x3d8]
mov edx, 0x1e
mov r8d, 2
mov r9d, 0xf
lea rax, [rbp + 0xb00]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140135290
mov r9, qword [rbp + 0x4b0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x30
mov r10b, byte [r9]
mov r11b, 0xbd
xor r11b, 0xbd
xor r9d, r9d
cmp r10b, r11b
mov r10, r9
mov qword [rbp + 0x330], r10
mov r10, r9
mov qword [rbp + 0x338], r10
mov r10, r9
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x140139790
mov rax, qword [rbp + 0x3e0]
mov rcx, qword [rbp + 0xb00]
mov qword [rbp + 0x2b8], rcx
mov rax, qword [rax]
mov qword [rbp + 0x2c0], rax
lea rcx, [rbp + 0xb00]
sub rsp, 0x20
call fcn.140025608
mov rax, qword [rbp + 0x3f0]
mov rcx, qword [rbp + 0x3e8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x2c8], rdx
mov rax, qword [rax]
mov qword [rbp + 0x2d0], rax
sub rsp, 0x20
call fcn.14002562b
mov al, byte [rbp + 0x307]
add rsp, 0x20
test al, 1
jne 0x1401371a6
jmp 0x1401373f6
mov eax, dword [0x1402537b8]
mov ecx, dword [0x1402537bc]
sub eax, 0x4c7c850b
add eax, ecx
mov ecx, 0x523aadc2
xor ecx, 0x1e4628c9
add eax, ecx
xor eax, 0xb707dae8
mov ecx, 0x2b964096
xor ecx, 0xe3a816c
xor edx, edx
div ecx
imul eax, eax, 0x238154aa
cmp eax, 0x2cf71c72
je 0x140139968
mov ecx, dword [0x1402537c0]
mov edx, dword [0x1402537c4]
mov eax, 0x3e6064df
xor eax, 0xc19f9b20
mov r8d, ecx
xor r8d, eax
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x2c2d64fa
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x2c2d64fa
mov r8d, 0xcf999dc5
xor r8d, 0xe3b4f93f
or eax, r8d
imul eax, edx
add eax, ecx
sub eax, 0xc31fe501
add eax, 0x4ceccd1a
mov ecx, 0x44a9fdc
xor ecx, 0xc7557add
add eax, ecx
mov ecx, 0xff5e052f
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x460]
mov ecx, eax
mov al, byte [rbp + 0x317]
mov dword [rbp + 0x2b0], ecx
and al, 1
movzx r8d, al
lea rcx, [rbp + 0xb48]
mov r9d, 1
sub rsp, 0x20
call fcn.14012e060
mov rcx, qword [rbp + 0x4b0]
mov eax, dword [rbp + 0x2b0]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x2b7], cl
cmp eax, 0x71a16330
ja 0x1401371eb
mov rax, qword [rbp + 0x2e0]
mov rcx, qword [rbp + 0x2d8]
mov rdx, qword [rbp + 0x2f0]
mov r8, qword [rbp + 0x2e8]
mov r9, qword [rbp + 0x2c0]
mov r10, qword [rbp + 0x2b8]
mov r11, qword [rbp + 0x2d0]
mov rsi, qword [rbp + 0x2c8]
mov bl, byte [rbp + 0x2b7]
test bl, 1
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x14013734a
jmp 0x140139790
mov rsi, qword [rbp + 0x2c8]
mov rdi, qword [rbp + 0x4b0]
mov rdx, qword [rbp + 0x460]
lea rcx, [rbp + 0xb48]
mov r8d, 1
mov r9d, 2
sub rsp, 0x20
call fcn.14012e060
mov r11, qword [rbp + 0x2d0]
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x20
cmp byte [rdi], 0
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
je 0x1401386fb
jmp 0x140139790
mov rax, qword [rbp + 0x3f8]
mov qword [rbp + 0x588], 0
mov qword [rax], 0
lea rcx, [rbp + 0x568]
mov edx, 0x20
sub rsp, 0x20
call fcn.140132d7e
mov rcx, qword [rbp + 0x470]
add rsp, 0x20
mov edx, 0x13c
sub rsp, 0x20
call fcn.140132d7e
mov rcx, qword [rbp + 0x2d8]
add rsp, 0x20
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x2a0], rax
xor eax, eax
mov qword [rbp + 0x2a8], rax
mov rcx, qword [rbp + 0x2a0]
mov rax, qword [rbp + 0x2a8]
mov qword [rbp + 0x298], rax
cmp rax, rcx
jne 0x1401374b2
mov rcx, qword [rbp + 0x2a0]
mov rdx, qword [rbp + 0x2b8]
xor eax, eax
test rdx, rdx
cmovg rax, rdx
mov qword [rbp + 0x280], rax
xor eax, eax
mov qword [rbp + 0x288], rcx
mov qword [rbp + 0x290], rax
jmp 0x1401374f4
mov rax, qword [rbp + 0x298]
mov rcx, qword [rbp + 0x470]
mov rdx, qword [rbp + 0x2f0]
mov dl, byte [rdx + rax + 8]
mov byte [rcx + rax], dl
movabs rcx, 0xc03acc8775bb9d05
movabs rdx, 0xc03acc8775bb9d04
xor rcx, rdx
add rax, rcx
mov qword [rbp + 0x2a8], rax
jmp 0x140137461
mov rcx, qword [rbp + 0x280]
mov rdx, qword [rbp + 0x288]
mov rax, qword [rbp + 0x290]
mov qword [rbp + 0x270], rax
mov qword [rbp + 0x278], rdx
cmp rax, rcx
je 0x140137576
mov rax, qword [rbp + 0x270]
mov rcx, qword [rbp + 0x278]
mov rdx, qword [rbp + 0x470]
mov r8, qword [rbp + 0x2d0]
mov r8b, byte [r8 + rax + 8]
mov byte [rdx + rcx], r8b
add rcx, 1
movabs rdx, 0xf5a32a8d9e80f86b
movabs r8, 0xf5a32a8d9e80f86a
xor rdx, r8
add rax, rdx
mov qword [rbp + 0x288], rcx
mov qword [rbp + 0x290], rax
jmp 0x1401374f4
mov rax, qword [rbp + 0x3f8]
mov rdx, qword [rbp + 0x2d8]
mov rcx, qword [rbp + 0x2b8]
add rcx, rdx
mov qword [rbp + 0x260], rcx
mov qword [rbp + 0x588], 0
mov qword [rax], 0
xor eax, eax
mov qword [rbp + 0x268], rax
mov rcx, qword [rbp + 0x260]
mov rax, qword [rbp + 0x268]
mov qword [rbp + 0x258], rax
cmp rax, rcx
jge 0x140137bd3
mov rax, qword [rbp + 0x470]
mov rcx, qword [rbp + 0x258]
mov al, byte [rax + rcx]
mov byte [rbp + 0x24f], al
xor eax, eax
mov qword [rbp + 0x250], rax
mov rcx, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x258]
mov rax, qword [rbp + 0x250]
mov qword [rbp + 0x230], rax
movabs r8, 0x2da54b7d1207ad34
movabs r9, 0x2da54b7d1207ad35
xor r8, r9
add rax, r8
mov qword [rbp + 0x238], rax
add rax, rdx
mov qword [rbp + 0x240], rax
cmp rax, rcx
jge 0x140137750
mov eax, dword [0x1402537c8]
mov ecx, dword [0x1402537cc]
xor ecx, 0x5b6604f0
add eax, ecx
mov ecx, eax
xor ecx, 0xb30a5c19
mov edx, 0xadc0dd78
xor edx, 0x523f2287
xor ecx, edx
or eax, 0xb30a5c19
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x464be0e4
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x464be0e4
add eax, edx
sub eax, ecx
and eax, 0xa244d1d0
mov ecx, 0xbe1a5006
xor ecx, 0x543ec5fd
cmp eax, ecx
jae 0x140139971
mov rcx, qword [rbp + 0x470]
mov r8b, byte [rbp + 0x24f]
mov eax, dword [0x1402537d0]
xor eax, 0x36aa924f
add eax, dword [0x1402537d4]
mov r9d, 0x2acdbb9f
xor edx, edx
div r9d
mov rdx, qword [rbp + 0x240]
mov r9d, eax
mov eax, 0x595e462d
xor eax, 0xfb1e98b3
xor r9d, eax
mov eax, r9d
xor eax, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0xfb7cdbe2
and eax, r10d
mov r10d, 0xfe7dff52
xor r10d, 0x50124b0
or r9d, r10d
xor r9d, 0xffffffff
xor eax, 0xffffffff
xor r9d, 0xffffffff
and eax, r9d
cmp byte [rcx + rdx], r8b
sete cl
mov byte [rbp + 0x22f], cl
cmp eax, 0x80bffc5e
jbe 0x1401376a1
mov rax, qword [rbp + 0x238]
mov cl, byte [rbp + 0x22f]
test cl, 1
mov qword [rbp + 0x250], rax
jne 0x1401375ee
jmp 0x140137750
mov rcx, qword [rbp + 0x230]
mov al, byte [rbp + 0x24f]
test al, al
sete al
sub rcx, 2
setae cl
and al, cl
test al, 1
jne 0x140137778
jmp 0x1401378c7
mov rcx, qword [rbp + 0x230]
movabs rdx, 0xb2ec6d40c8288489
movabs rax, 0xb2ec6d40c8288483
xor rdx, rax
mov qword [rbp + 0x220], rdx
mov al, 0x11
mov r8b, 0x12
mov byte [rbp + 0x22d], r8b
cmp rcx, rdx
mov byte [rbp + 0x22e], al
jb 0x1401377c4
mov al, byte [rbp + 0x22d]
mov byte [rbp + 0x22e], al
mov rcx, qword [rbp + 0x230]
mov rdx, qword [rbp + 0x220]
mov r8, qword [rbp + 0x238]
mov al, byte [rbp + 0x22e]
mov byte [rbp + 0x20f], al
mov eax, 0x8a
cmp rcx, 0x8a
cmovb rax, r8
mov qword [rbp + 0x210], rax
mov al, 0xfd
mov r8b, 0xf5
mov byte [rbp + 0x21e], r8b
cmp rcx, rdx
mov byte [rbp + 0x21f], al
jb 0x140137823
mov al, byte [rbp + 0x21e]
mov byte [rbp + 0x21f], al
mov dl, byte [rbp + 0x20f]
mov al, byte [rbp + 0x21f]
mov byte [rbp + 0x1ff], al
lea rcx, [rbp + 0x588]
sub rsp, 0x20
call fcn.1400217b0
mov al, byte [rbp + 0x1ff]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov dl, al
and dl, cl
or al, cl
add dl, al
lea rcx, [rbp + 0x588]
sub rsp, 0x20
call fcn.1400217b0
mov rax, qword [rbp + 0x258]
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
movabs rdx, 0xb43083de8ab66298
sub rax, rdx
add rax, 0xffffffffffffffff
movabs rdx, 0xb43083de8ab66298
add rax, rdx
movabs rdx, 0x251491ebb2dcd584
sub rax, rdx
add rax, rcx
movabs rcx, 0x251491ebb2dcd584
add rax, rcx
mov qword [rbp + 0x200], rax
jmp 0x140137bb7
mov dl, byte [rbp + 0x24f]
movabs rax, 0x7643f854c243fe07
movabs rcx, 0x7643f854c243fe05
xor rax, rcx
mov qword [rbp + 0x1f0], rax
lea rcx, [rbp + 0x588]
sub rsp, 0x20
call fcn.1400217b0
mov rdx, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x230]
mov rax, qword [rbp + 0x258]
add rsp, 0x20
cmp rcx, rdx
mov qword [rbp + 0x200], rax
jbe 0x140137bb7
mov rax, qword [rbp + 0x230]
mov ecx, 6
xor edx, edx
div rcx
mov rcx, rax
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x1d8], rcx
mov ecx, 6
xor edx, edx
div rcx
mov qword [rbp + 0x1e0], rdx
xor eax, eax
mov qword [rbp + 0x1e8], rax
mov rcx, qword [rbp + 0x1d8]
mov rax, qword [rbp + 0x1e8]
mov qword [rbp + 0x1d0], rax
cmp rax, rcx
je 0x1401379cc
mov dl, 0x75
xor dl, 0x65
lea rcx, [rbp + 0x588]
sub rsp, 0x20
call fcn.1400217b0
add rsp, 0x20
mov dl, 0xdf
xor dl, 0xdc
lea rcx, [rbp + 0x588]
sub rsp, 0x20
call fcn.1400217b0
mov rax, qword [rbp + 0x1d0]
add rsp, 0x20
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov qword [rbp + 0x1e8], rax
jmp 0x140137960
mov rax, qword [rbp + 0x1e0]
cmp rax, 2
jbe 0x140137b60
mov eax, dword [0x1402537d8]
mov edx, dword [0x1402537dc]
mov ecx, eax
and ecx, edx
mov r8d, 0x26666bd2
xor r8d, 0x26666bd0
imul ecx, r8d
xor eax, edx
add eax, ecx
mov edx, 0xc01f2d0e
xor edx, 0xa4c15dc1
mov ecx, eax
xor ecx, edx
mov edx, 0x68236156
xor edx, 0xcfd1199
mov r8d, 0x9a40e95b
xor r8d, 0x65bf16a4
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
mov ecx, 0x2ed94160
xor ecx, 0x2f587fe1
xor edx, edx
div ecx
xor eax, 0xd2d00039
cmp eax, 0x3bf8dbc3
jbe 0x14013997a
mov eax, dword [0x1402537e0]
mov edx, dword [str.CeJXEA]
xor edx, 0xbc7c87f0
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
mov r9d, edx
xor r9d, 0xffffffff
and r8d, r9d
xor ecx, 0xffffffff
xor r8d, 0xffffffff
and ecx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0x919e1059
xor edx, 0x6e61efa6
xor ecx, edx
mov edx, 0x708cd3e5
xor edx, 0x8f732c1a
xor eax, edx
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xfdcdbfa5
mov edx, 0xc92b7001
xor edx, 0x34e6cfa4
mov r8d, 0x7540e3f4
xor r8d, 0x8abf1c0b
xor edx, r8d
and ecx, edx
or eax, ecx
mov edx, 0x89430fd1
xor edx, 0x611e276c
mov ecx, eax
and ecx, edx
mov edx, 0x51b95e28
xor edx, 0x51b95e2a
imul ecx, edx
xor eax, 0xe85d28bd
add eax, ecx
imul eax, eax, 0x92e6f8db
mov dword [rbp + 0x1cc], eax
lea rcx, [rbp + 0x588]
mov edx, 0x10
sub rsp, 0x20
call fcn.1400217b0
mov rax, qword [rbp + 0x1e0]
add rsp, 0x20
mov dl, al
add dl, 0xfd
lea rcx, [rbp + 0x588]
sub rsp, 0x20
call fcn.1400217b0
mov eax, dword [rbp + 0x1cc]
add rsp, 0x20
cmp eax, 0x537a4ef7
jbe 0x140137a52
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x1c0], rax
jmp 0x140137b9f
mov rcx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x230]
movabs rdx, 0xc6ec8a9416d64f5b
movabs r8, 0xdbe5ba46fd1c19a6
xor rdx, r8
sub rax, rdx
sub rax, rcx
movabs rcx, 0x1d0930d2ebca56fd
add rax, rcx
mov qword [rbp + 0x1c0], rax
mov rcx, qword [rbp + 0x258]
mov rax, qword [rbp + 0x1c0]
add rax, rcx
mov qword [rbp + 0x200], rax
mov rax, qword [rbp + 0x200]
xor ecx, ecx
sub rcx, 1
sub rax, rcx
mov qword [rbp + 0x268], rax
jmp 0x1401375b0
lea rcx, [rbp + 0x510]
mov edx, 0x4c
sub rsp, 0x20
call fcn.140132d7e
mov rax, qword [rbp + 0x3f8]
add rsp, 0x20
mov rcx, qword [rbp + 0x588]
mov qword [rbp + 0x1a8], rcx
mov rax, qword [rax]
mov qword [rbp + 0x1b0], rax
xor eax, eax
mov qword [rbp + 0x1b8], rax
mov rcx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x1b8]
mov qword [rbp + 0x1a0], rax
cmp rax, rcx
jge 0x140137ca5
mov rax, qword [rbp + 0x1a0]
mov rcx, qword [rbp + 0x1b0]
mov cl, byte [rcx + rax + 8]
movzx edx, cl
mov r8d, dword [rbp + rdx*4 + 0x510]
mov r9d, 0x7cfbfada
xor r9d, 0x7cfbfada
mov r10d, 0x54abbddd
xor r10d, 0x54abbddc
sub r9d, r10d
sub r8d, r9d
mov dword [rbp + rdx*4 + 0x510], r8d
cmp cl, 0xf
seta cl
and cl, 1
movzx ecx, cl
mov edx, ecx
add rax, 1
mov rcx, rax
and rcx, rdx
shl rcx, 1
xor rax, rdx
add rax, rcx
mov qword [rbp + 0x1b8], rax
jmp 0x140137c14
movabs rdx, 0x1adda34f68937085
movabs rax, 0x1adda34f68937096
xor rdx, rax
movabs r8, 0xd347c8a3c6d11c7c
movabs rax, 0xd347c8a3c6d11c6f
xor r8, rax
movabs r9, 0xdd99766d06a8c58
movabs rax, 0xdd99766d06a8c5f
xor r9, rax
lea rcx, [rbp + 0x510]
lea rax, [rbp + 0x568]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140135290
mov rax, qword [rbp + 0x4b0]
add rsp, 0x30
cmp byte [rax], 0
jne 0x1401385dc
mov rax, qword [rbp + 0x400]
mov rcx, qword [rbp + 0x568]
mov qword [rbp + 0x178], rcx
mov rax, qword [rax]
mov qword [rbp + 0x180], rax
lea rcx, [rbp + 0x568]
sub rsp, 0x20
call fcn.140025608
mov rax, qword [rbp + 0x410]
mov rcx, qword [rbp + 0x408]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x188], rdx
mov rax, qword [rax]
mov qword [rbp + 0x190], rax
sub rsp, 0x20
call fcn.14002562b
mov rcx, qword [rbp + 0x478]
add rsp, 0x20
mov edx, 0x26
sub rsp, 0x20
call fcn.140132d7e
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x198], rax
mov rcx, qword [rbp + 0x198]
mov qword [rbp + 0x168], rcx
mov eax, 0x13
cmp rcx, 0x13
mov qword [rbp + 0x170], rax
je 0x140137e36
mov rax, qword [rbp + 0x168]
mov rcx, qword [rbp + 0x478]
mov rdx, qword [rbp + 0x190]
mov r8, qword [str._2__]
movzx r8d, byte [r8 + rax]
movzx edx, byte [rdx + r8 + 8]
mov word [rcx + rax*2], dx
movabs rcx, 0xb8fcb3d7420fce9
movabs rdx, 0xb8fcb3d7420fce8
xor rcx, rdx
movabs rdx, 0x54bd93bec4e4c99d
movabs r8, 0xab426c413b1b3662
xor rdx, r8
xor rcx, rdx
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rbp + 0x198], rax
jmp 0x140137d9e
mov rax, qword [rbp + 0x170]
mov qword [rbp + 0x160], rax
mov eax, dword [0x1402537e8]
mov edx, dword [0x1402537ec]
xor edx, 0xdac47452
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
and eax, 0x7a785c65
mov edx, 0xffffffff
xor edx, 0xc99dca79
mov ecx, eax
xor ecx, edx
and ecx, eax
mov edx, 0xdc5f0be2
xor edx, 0x23a0f41d
mov eax, ecx
xor eax, edx
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0x9aaf6f37
mov r8d, 0xffffffff
xor r8d, 0x9aaf6f37
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x9aaf6f37
and ecx, edx
xor eax, 0xffffffff
mov edx, 0x9287a38
xor edx, 0xf6d785c7
xor ecx, edx
and eax, ecx
cmp eax, 0x99df571e
jae 0x140139983
mov rdx, qword [rbp + 0x478]
mov r9, qword [rbp + 0x160]
mov ecx, dword [0x1402537f0]
mov eax, 0x486ee201
xor eax, 0x19fdd7bd
xor ecx, eax
add ecx, dword [0x1402537f4]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x21a48919
xor r8d, 0xdd917518
and r8d, eax
mov r10d, 0xffffffff
xor r10d, 0xfc35fc01
mov eax, ecx
and eax, r10d
imul eax, r8d
mov r10d, 0xe13ce47f
xor r10d, 0x1d09187e
mov r8d, ecx
and r8d, r10d
or ecx, 0xfc35fc01
imul ecx, r8d
add ecx, eax
or ecx, 0xb5c4c073
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
mov r8d, 0xe543fc36
xor r8d, 0x9c143904
and eax, r8d
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x7957c532
mov r10d, 0xffffffff
xor r10d, 0x7957c532
or r8d, r10d
and ecx, r8d
mov r8d, 0x364a3b81
xor r8d, 0xc9b5c47e
xor ecx, r8d
xor eax, 0xffffffff
mov r8d, 0xd64d2ca6
xor r8d, 0x29b2d359
xor ecx, r8d
or eax, ecx
mov ecx, 0xaf9cc709
xor ecx, 0xf61387a2
movabs r10, 0xf42d20ae22fe1eeb
movabs r8, 0xbd2df51dd01e114
xor r10, r8
mov r8, r9
and r8, r10
movabs r10, 0xa35aa3423e4a7513
movabs r11, 0x5ca55cbdc1b58aec
xor r10, r11
or r9, r10
add r8, r9
mov qword [rbp + 0x150], r8
cmp word [rdx + r8*2], 0
sete dl
mov byte [rbp + 0x15f], dl
cmp eax, ecx
je 0x140137ee0
mov rax, qword [rbp + 0x150]
mov cl, byte [rbp + 0x15f]
test cl, 1
mov qword [rbp + 0x170], rax
jne 0x140137e36
jmp 0x14013803a
mov rdx, qword [rbp + 0x460]
mov al, byte [rbp + 0x317]
and al, 1
movzx r8d, al
lea rcx, [rbp + 0xb48]
mov r9d, 1
sub rsp, 0x20
call fcn.14012e060
mov rax, qword [rbp + 0x4b0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401385dc
mov rdx, qword [rbp + 0x460]
lea rcx, [rbp + 0xb48]
mov r8d, 2
mov r9d, 2
sub rsp, 0x20
call fcn.14012e060
mov rax, qword [rbp + 0x4b0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x40
xor cl, 0x40
cmp al, cl
jne 0x1401385dc
mov rdx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x2d8]
mov r8d, eax
mov eax, 0xb8284685
xor eax, 0x47d7b87a
add r8d, eax
movabs r9, 0x3fbb12db7cd90146
movabs rax, 0x3fbb12db7cd90143
xor r9, rax
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov rax, qword [rbp + 0x4b0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401385dc
mov rdx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x2b8]
mov r8d, eax
add r8d, 0xffffffff
lea rcx, [rbp + 0xb48]
mov r9d, 5
sub rsp, 0x20
call fcn.14012e060
mov rax, qword [rbp + 0x4b0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401385dc
mov rdx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x160]
mov r8d, eax
add r8d, 0xfffffffc
lea rcx, [rbp + 0xb48]
mov r9d, 4
sub rsp, 0x20
call fcn.14012e060
mov rax, qword [rbp + 0x4b0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xe4
xor cl, 0xe4
cmp al, cl
jne 0x1401385dc
mov rcx, qword [rbp + 0x160]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x140], rax
xor eax, eax
mov qword [rbp + 0x148], rax
mov rdx, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x148]
mov qword [rbp + 0x130], rcx
xor eax, eax
cmp rcx, rdx
mov qword [rbp + 0x138], rax
je 0x140138250
mov rcx, qword [rbp + 0x130]
mov rdx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x478]
movzx r8d, word [rax + rcx*2]
movabs r9, 0x7bf93c5cb68d8e19
movabs rax, 0x7bf93c5cb68d8e1a
xor r9, rax
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov rcx, qword [rbp + 0x4b0]
mov rax, qword [rbp + 0x130]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x60
xor dl, 0x60
xor r8d, r8d
sub r8, 1
sub rax, r8
cmp cl, dl
mov qword [rbp + 0x148], rax
je 0x1401381b1
jmp 0x1401385dc
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0x128], rax
cmp rax, qword [rbp + 0x588]
jge 0x140138651
mov eax, dword [0x1402537f8]
mov ecx, dword [0x1402537fc]
xor ecx, 0xb05c5957
or eax, ecx
mov ecx, 0x4afef823
xor edx, edx
div ecx
mov edx, 0x314614fd
xor edx, 0x4a8abdda
mov ecx, eax
xor ecx, edx
mov edx, 0x40db469
xor edx, 0x7fc11d4e
mov r8d, 0x801e2dfc
xor r8d, 0x7fe1d203
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
mov edx, 0x95b75d77
xor edx, 0x95b75d76
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
mov edx, 0x1ba69009
xor edx, 0x2fada637
or eax, edx
add eax, ecx
cmp eax, 0xd5b6e148
jae 0x14013998c
mov rdx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x190]
mov r8, qword [rbp + 0x180]
mov r9, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x3f8]
mov r10d, dword [0x140253800]
xor r10d, 0xebd380f5
mov r11d, dword [0x140253804]
xor r11d, 0x1f1ff527
xor r10d, r11d
mov r11d, r10d
or r11d, r11d
xor r11d, 0xffffffff
mov esi, 0xffffffff
xor esi, 0xb6a24b5a
mov edi, 0xffffffff
xor edi, 0xb6a24b5a
and esi, edi
xor r11d, 0xffffffff
xor esi, 0xffffffff
and r11d, esi
xor r10d, 0xffffffff
mov esi, 0xffffffff
xor esi, 0xb6a24b5a
and r10d, esi
xor r11d, 0xffffffff
xor r10d, 0xffffffff
and r11d, r10d
sub r11d, 0x75a082c
sub r11d, 0xee4ae133
mov r10d, 0x1e2130fc
xor r10d, 0x197b38d0
add r11d, r10d
mov r10d, r11d
xor r10d, 0xffffffff
and r10d, 0x5cfecd1c
mov esi, 0xffffffff
xor esi, 0x5cfecd1c
and r11d, esi
or r10d, r11d
mov dword [rbp + 0x120], r10d
mov rcx, qword [rcx]
mov cl, byte [rcx + r9 + 8]
mov byte [rbp + 0x11f], cl
movzx ecx, cl
movzx r8d, word [r8 + rcx*2 + 8]
movzx eax, byte [rax + rcx + 8]
mov r9d, eax
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov rcx, qword [rbp + 0x4b0]
mov eax, dword [rbp + 0x120]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x127], cl
cmp eax, 0x29360a9d
jbe 0x14013998c
mov al, byte [rbp + 0x127]
test al, 1
jne 0x14013841e
jmp 0x1401385dc
mov al, byte [rbp + 0x11f]
mov rcx, qword [rbp + 0x128]
inc rcx
mov qword [rbp + 0x110], rcx
sub al, 0x10
je 0x140138477
jmp 0x140138442
mov al, byte [rbp + 0x11f]
sub al, 0x11
je 0x1401384d8
jmp 0x140138455
mov rax, qword [rbp + 0x110]
mov cl, byte [rbp + 0x11f]
sub cl, 0x12
mov qword [rbp + 0x108], rax
je 0x140138569
jmp 0x1401385c9
mov rdx, qword [rbp + 0x460]
mov rcx, qword [rbp + 0x110]
mov rax, qword [rbp + 0x3f8]
mov rax, qword [rax]
movzx r8d, byte [rax + rcx + 8]
lea rcx, [rbp + 0xb48]
mov r9d, 2
sub rsp, 0x20
call fcn.14012e060
mov rcx, qword [rbp + 0x4b0]
mov rax, qword [rbp + 0x128]
add rsp, 0x20
mov cl, byte [rcx]
add rax, 2
cmp cl, 0
mov qword [rbp + 0x108], rax
je 0x1401385c9
jmp 0x1401385dc
mov rdx, qword [rbp + 0x460]
mov rcx, qword [rbp + 0x110]
mov rax, qword [rbp + 0x3f8]
mov rax, qword [rax]
movzx r8d, byte [rax + rcx + 8]
lea rcx, [rbp + 0xb48]
mov r9d, 3
sub rsp, 0x20
call fcn.14012e060
mov rcx, qword [rbp + 0x4b0]
mov rax, qword [rbp + 0x128]
add rsp, 0x20
mov cl, byte [rcx]
movabs rdx, 0x550f5e991c1db78f
movabs r8, 0x550f5e991c1db78f
xor rdx, r8
movabs r8, 0x124c46df72097d4
movabs r9, 0x124c46df72097d6
xor r8, r9
sub rdx, r8
sub rax, rdx
cmp cl, 0
mov qword [rbp + 0x108], rax
je 0x1401385c9
jmp 0x1401385dc
mov rdx, qword [rbp + 0x460]
mov rcx, qword [rbp + 0x110]
mov rax, qword [rbp + 0x3f8]
mov rax, qword [rax]
movzx r8d, byte [rax + rcx + 8]
lea rcx, [rbp + 0xb48]
mov r9d, 7
sub rsp, 0x20
call fcn.14012e060
mov rcx, qword [rbp + 0x4b0]
mov rax, qword [rbp + 0x128]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x23
xor dl, 0x23
add rax, 2
cmp cl, dl
mov qword [rbp + 0x108], rax
jne 0x1401385dc
mov rax, qword [rbp + 0x108]
mov qword [rbp + 0x138], rax
jmp 0x140138250
mov rax, qword [rbp + 0x2e0]
mov rcx, qword [rbp + 0x2d8]
mov rdx, qword [rbp + 0x2f0]
mov r8, qword [rbp + 0x2e8]
mov r9, qword [rbp + 0x2c0]
mov r10, qword [rbp + 0x2b8]
mov r11, qword [rbp + 0x2d0]
mov rsi, qword [rbp + 0x2c8]
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jmp 0x140139790
mov rax, qword [rbp + 0x418]
mov rcx, qword [rbp + 0x190]
mov rdx, qword [rbp + 0x188]
mov qword [rbp + 0x500], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x500]
sub rsp, 0x20
call fcn.140021670
mov rdx, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x180]
mov rax, qword [rbp + 0x420]
add rsp, 0x20
mov qword [rbp + 0x4f0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x4f0]
sub rsp, 0x20
call fcn.140024af2
add rsp, 0x20
lea rcx, [rbp + 0x568]
sub rsp, 0x20
call fcn.140132c96
add rsp, 0x20
mov rax, qword [rbp + 0x588]
mov qword [rbp + 0x4e0], rax
mov rax, qword [rbp + 0x590]
mov qword [rbp + 0x4e8], rax
lea rcx, [rbp + 0x4e0]
sub rsp, 0x20
call fcn.140021670
add rsp, 0x20
mov eax, dword [0x140253808]
mov ecx, dword [0x14025380c]
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
add eax, 0x8e8b928b
sub eax, 0x41a550f6
mov ecx, 0x4810d60d
xor ecx, 0xc69b4486
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0x6e6781ec
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
imul eax, eax, 0xd5ecf0b5
cmp eax, 0xff765f79
je 0x140139995
mov eax, dword [0x140253810]
mov edx, dword [0x140253814]
mov ecx, 0xe8899e94
xor ecx, 0xe8899e94
sub ecx, edx
sub eax, ecx
add eax, 0xd372e20e
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x5d491e92
xor edx, 0x8188aded
and edx, ecx
mov r8d, 0x47bd514e
xor r8d, 0x9b7ce231
mov ecx, 0x8b88e782
xor ecx, 0x7477187d
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xdcc1b37f
or eax, 0xdcc1b37f
imul eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xcc6e639d
mov r8d, 0xffffffff
xor r8d, 0xcc6e639d
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xcc6e639d
or eax, 0xcc6e639d
imul eax, edx
add eax, ecx
cmp eax, 0x21a103a2
ja 0x14013874f
mov rcx, qword [rbp + 0x318]
xor eax, eax
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x14013880f
mov rax, qword [rbp + 0xf8]
mov rcx, qword [rbp + 0x100]
mov qword [rbp + 0xe8], rcx
mov qword [rbp + 0xf0], rax
mov eax, dword [0x140253818]
imul eax, dword [0x14025381c]
mov ecx, 0x8c8dc2f2
xor edx, edx
div ecx
mov ecx, 0x70cae9c0
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x43641311
add eax, ecx
cmp eax, 0x8d1c02b2
jbe 0x14013999e
mov rcx, qword [rbp + 0xe8]
mov eax, dword [0x140253820]
xor eax, 0x530dd3ed
mov r8d, dword [0x140253824]
mov edx, 0x1caad75
xor edx, 0x151dd610
xor r8d, edx
xor edx, edx
div r8d
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xdde93dbb
mov r9d, 0xffffffff
xor r9d, 0xdde93dbb
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0x44f4e511
xor r9d, 0x991dd8aa
mov r8d, eax
and r8d, r9d
or eax, 0xdde93dbb
imul eax, r8d
add eax, edx
mov edx, 0x7b77d42
xor edx, 0x534c7920
imul eax, edx
sub eax, 0x4396add9
mov rdx, qword [rbp + 0xb40]
mov qword [rbp + 0xd8], rdx
cmp rcx, rdx
setl cl
mov byte [rbp + 0xe7], cl
cmp eax, 0xbf5cc080
jae 0x14013885f
mov al, byte [rbp + 0xe7]
test al, 1
jne 0x140138918
jmp 0x1401394c0
mov eax, dword [0x140253828]
mov ecx, dword [0x14025382c]
xor ecx, 0x71e97d8a
sub eax, ecx
mov edx, 0x1d49cd6
xor edx, 0xd78205e6
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, 0xd6569930
and eax, ecx
mov edx, 0x892e723a
xor edx, 0x6bf3edcf
mov ecx, 0x424643cb
xor ecx, 0xbdb9bc34
xor edx, ecx
mov ecx, eax
and ecx, edx
mov r8d, 0x13387adc
xor r8d, 0xf1e5e529
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
or eax, 0xecd178db
cmp eax, 0x8425b8f1
jbe 0x1401399a7
mov r8, qword [rbp + 0xe8]
mov eax, dword [0x140253830]
xor edx, edx
div dword [0x140253834]
mov rdx, qword [rbp + 0x4b8]
mov edi, eax
mov ecx, edi
xor ecx, 0x407d417c
xor ecx, 0xffffffff
mov eax, 0x74eca5cd
xor eax, 0x3491e4b1
and eax, ecx
shl eax, 1
sub eax, 0x407d417c
sub edi, eax
mov eax, edi
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0xecb9b712
mov r10d, 0x1ffc5144
xor r10d, 0xcd18902f
mov ecx, 0x5a1c8115
xor ecx, 0xa5e37eea
xor r10d, ecx
mov r11d, 0x425bc858
xor r11d, 0x90bf0933
mov ecx, eax
and ecx, r11d
and edi, r10d
mov r11d, r9d
and r11d, 0xd2e4c16b
mov esi, 0xf84de1a3
xor esi, 0x14f456b1
and esi, r10d
or ecx, edi
or r11d, esi
xor ecx, r11d
or eax, r9d
mov r9d, 0x46fb3d8
xor r9d, 0xfb904c27
xor eax, r9d
mov r9d, 0xd2f41b0
xor r9d, 0xdfcb80db
or r9d, r10d
and eax, r9d
or ecx, eax
mov r9d, ecx
xor r9d, 0xffffffff
mov eax, 0x509be464
xor eax, 0xc0f9f18c
and eax, r9d
mov r9d, 0xffffffff
xor r9d, 0x906215e8
and ecx, r9d
or eax, ecx
mov ecx, 0x72ca66c2
xor ecx, 0x8ad96834
mov rdx, qword [rdx]
mov qword [rbp + 0xc8], rdx
mov dx, word [rdx + r8*2 + 8]
mov word [rbp + 0xd4], dx
cmp dx, 0xffff
setg dl
mov byte [rbp + 0xd7], dl
cmp eax, ecx
je 0x140138987
mov al, byte [rbp + 0xd7]
test al, 1
jne 0x140138ee9
jmp 0x140138ac0
mov r14, qword [rbp + 0x2e0]
mov r10, qword [rbp + 0x2d0]
mov rsi, qword [rbp + 0x2c8]
mov rdi, qword [rbp + 0x4b0]
mov r12, qword [rbp + 0xe8]
mov cx, word [rbp + 0xd4]
mov rax, qword [rbp + 0xc8]
mov r9w, word [rax + r12*2 + 0xa]
mov ax, word [rax + r12*2 + 0xc]
mov r13w, cx
shr r13w, 8
mov dx, 0x26a2
xor dx, 0xd95d
xor r13w, dx
mov r8w, 0xffff
xor r8w, 0x7f
mov dx, 0xffff
xor dx, 0x7ff2
or r13w, r8w
or dx, 0x7ff2
xor r13w, 0xffff
and r13w, dx
or cx, cx
xor cx, 0xffff
mov dx, 0xffff
xor dx, 0xff
mov r8w, 0xffff
xor r8w, 0xff
and dx, r8w
or cx, dx
mov dx, 0x58ea
xor dx, 0xa715
xor cx, dx
movzx edx, r13w
mov r8d, edx
mov rdx, qword [str.FFFFFFFFGGGGDDDDEEEEBBBBCCCCF]
movzx edx, byte [rdx + r8]
mov r15d, edx
mov rdx, qword [0x140264910]
mov r8w, word [rdx + r8*2]
mov dx, ax
xor dx, 0xffff
and dx, r8w
xor r8w, 0xffff
mov bx, ax
and bx, r8w
sub bx, dx
movzx ecx, cx
mov r11d, ecx
mov rcx, qword [str.FFFFGGDDEEBBCC__AANNOOLLMMJJKK]
movzx ecx, byte [rcx + r11]
mov r8d, ecx
mov rcx, qword [0x1402648f8]
sub r9w, word [rcx + r11*2]
movabs rcx, 0xf941d57aa1add8a1
movabs rdx, 0xf941d57aa1add8a2
xor rcx, rdx
mov rdx, qword [rbp + 0x460]
add r12, rcx
mov rcx, qword [rbp + 0x2f0]
mov qword [rbp + 0x88], r12
movzx eax, ax
xor r12d, r12d
sub r12, rax
mov rax, qword [rbp + 0xf0]
sub rax, r12
mov qword [rbp + 0x90], rax
mov ax, 0x649b
xor ax, 0x659a
mov r12w, r13w
and r12w, ax
mov ax, 0x4609
xor ax, 0x4708
or r13w, ax
mov rax, qword [rbp + 0x2c0]
add r12w, r13w
movzx r12d, r12w
movzx r14d, word [r14 + r12*2 + 8]
movzx ecx, byte [rcx + r12 + 8]
mov qword [rbp + 0x98], rcx
movzx ebx, bx
shl rbx, cl
mov rcx, qword [rbp + 0x98]
or rbx, r14
xor r14d, r14d
sub r14, rcx
xor ecx, ecx
sub rcx, r15
add r14, rcx
movabs rcx, 0x4ce53886b0217ae5
movabs r15, 0x4ce53886b0217ae5
xor rcx, r15
sub rcx, r14
mov qword [rbp + 0xa0], rcx
movzx eax, word [rax + r11*2 + 8]
mov r14d, eax
shl r14, cl
mov rcx, qword [rbp + 0xa0]
mov rax, rbx
and rax, r14
xor rbx, r14
or rax, rbx
movzx r10d, byte [r10 + r11 + 8]
movabs r11, 0xe39c2aaf1e1f2975
movabs rbx, 0x1c63d550e1e0d68a
xor r11, rbx
xor r10, r11
xor r11d, r11d
sub r11, 1
sub r10, r11
sub rcx, r10
mov qword [rbp + 0xa8], rcx
movzx r9d, r9w
shl r9, cl
mov rcx, qword [rbp + 0xa8]
or rax, r9
mov qword [rbp + 0xb0], rax
movabs r9, 0x581d8b1c6f91560f
movabs r10, 0x2585aaf272eb1426
xor r9, r10
add rcx, r9
add rcx, r8
movabs r8, 0x7d9821ee1d7a4229
sub rcx, r8
mov qword [rbp + 0xb8], rcx
mov r8, rcx
sub r8, 0x20
mov r9d, 0x20
cmovl r9, rcx
mov qword [rbp + 0xc0], r9
mov r8d, eax
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov r11, qword [rbp + 0x2d0]
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x20
cmp byte [rdi], 0
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x140139790
mov rax, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x90]
mov r8, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xb8]
sub rdx, r8
mov qword [rbp + 0x70], rdx
cmp rdx, 0
mov qword [rbp + 0x78], rcx
mov qword [rbp + 0x80], rax
jle 0x140138ecb
mov rsi, qword [rbp + 0x2c8]
mov rdi, qword [rbp + 0x88]
mov rbx, qword [rbp + 0x90]
mov r14, qword [rbp + 0x4b0]
mov r9, qword [rbp + 0x70]
mov rdx, qword [rbp + 0x460]
mov rax, qword [rbp + 0xb0]
mov rcx, qword [rbp + 0xc0]
shr rax, cl
mov r8d, eax
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov r11, qword [rbp + 0x2d0]
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x20
cmp byte [r14], 0
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x80], rdi
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x140139790
mov rcx, qword [rbp + 0x78]
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
jmp 0x14013880f
mov rdx, qword [rbp + 0xf0]
mov rax, qword [rbp + 0xe8]
mov cx, word [rbp + 0xd4]
movzx ecx, cx
mov qword [rbp + 0x40], rcx
add rax, 1
mov qword [rbp + 0x48], rax
xor ecx, ecx
xor eax, eax
mov qword [rbp + 0x50], rdx
mov dword [rbp + 0x5c], ecx
mov rcx, rax
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
mov rcx, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x50]
mov r8d, dword [rbp + 0x5c]
mov r9, qword [rbp + 0x60]
mov rax, qword [rbp + 0x68]
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], r9
mov dword [rbp + 0x34], r8d
mov qword [rbp + 0x38], rdx
cmp rax, rcx
je 0x140139313
mov rax, qword [rbp + 0x28]
mov ecx, dword [rbp + 0x34]
mov r8, qword [rbp + 0x2f0]
mov rdx, qword [rbp + 0x458]
mov r9, qword [rbp + 0x38]
mov r10, rdx
add r10, r9
mov qword [rbp - 8], r10
movzx edx, byte [rdx + r9]
movzx r8d, byte [r8 + rdx + 8]
mov r9d, r8d
mov qword [rbp], r9
movabs r8, 0x3c8cad6a31ef6683
movabs r10, 0xc3735295ce10997c
xor r8, r10
xor r9, r8
movabs r8, 0x3df4c88d74868c2
movabs r10, 0x3df4c88d74868c2
xor r8, r10
movabs r10, 0x32924a392a484518
movabs r11, 0x32924a392a484519
xor r10, r11
sub r8, r10
sub r9, r8
mov r8, rax
sub r8, r9
cmp r8, 0x20
mov qword [rbp + 8], rdx
mov dword [rbp + 0x14], ecx
mov qword [rbp + 0x18], rax
jle 0x140139183
mov edx, dword [0x140253838]
or edx, dword [0x14025383c]
mov eax, 0xcd7251d
xor eax, 0x8e44d82
or edx, eax
or edx, 0x95653145
mov eax, 0x4a27fdcb
xor eax, 0xfe29bbcf
mov ecx, edx
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0xb40e4604
and edx, eax
mov eax, 0x760d0385
xor eax, 0x760d0387
imul eax, edx
sub eax, ecx
cmp eax, 0xda477a2b
ja 0x1401399b0
mov r9, qword [rbp + 0x28]
mov r8d, dword [rbp + 0x34]
mov r10d, dword [0x140253840]
mov eax, dword [0x140253844]
xor eax, 0xffffffff
add r10d, eax
add r10d, 1
mov eax, r10d
xor eax, 0xffffffff
and eax, 0x73f1cda5
mov r11d, 0xffffffff
xor r11d, 0x73f1cda5
and r10d, r11d
mov ecx, 0xffffffff
xor ecx, 0xca8da679
and ecx, 0x73f1cda5
mov edx, 0xc09efc38
xor edx, 0xa135a41
and edx, r11d
or eax, r10d
or ecx, edx
xor eax, ecx
mov ecx, 0x73ce109e
xor edx, edx
div ecx
mov rdx, qword [rbp + 0x460]
sub eax, 0x6dcf66c9
mov dword [rbp - 0x10], eax
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov rcx, qword [rbp + 0x4b0]
mov eax, dword [rbp - 0x10]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 9], cl
cmp eax, 0xa584d5bb
ja 0x1401399b0
mov rax, qword [rbp + 0x2e0]
mov rcx, qword [rbp + 0x2d8]
mov rdx, qword [rbp + 0x2f0]
mov r8, qword [rbp + 0x2e8]
mov r9, qword [rbp + 0x2c0]
mov r10, qword [rbp + 0x2b8]
mov r11, qword [rbp + 0x2d0]
mov rsi, qword [rbp + 0x2c8]
mov bl, byte [rbp - 9]
test bl, 1
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jne 0x14013916b
jmp 0x140139790
mov rax, qword [rbp - 8]
movzx eax, byte [rax]
mov edx, eax
xor ecx, ecx
xor eax, eax
mov qword [rbp + 8], rdx
mov dword [rbp + 0x14], ecx
mov qword [rbp + 0x18], rax
mov rax, qword [rbp + 8]
mov ecx, dword [rbp + 0x14]
mov rdx, qword [rbp + 0x18]
mov qword [rbp - 0x28], rdx
mov dword [rbp - 0x1c], ecx
mov qword [rbp - 0x18], rax
mov ecx, dword [0x140253848]
mov eax, dword [0x14025384c]
xor eax, 0x1a01918c
imul ecx, eax
mov eax, 0x8ac041b5
xor eax, 0x39236b20
sub ecx, eax
mov eax, ecx
and eax, 0xa717a084
xor eax, 0xffffffff
add ecx, 0xa717a084
add ecx, 1
add ecx, eax
mov edx, 0x1ce7c155
xor edx, 0xe3183eaa
mov eax, ecx
xor eax, edx
and eax, 0xda10ccf5
mov edx, 0xffffffff
xor edx, 0xda10ccf5
and ecx, edx
or eax, ecx
cmp eax, 0x112cca5b
je 0x1401399b9
mov r9, qword [rbp]
mov r8, qword [rbp - 0x28]
mov r10d, dword [rbp - 0x1c]
mov rcx, qword [rbp + 0x2e0]
mov r11, qword [rbp - 0x18]
mov edx, dword [0x140253850]
mov eax, 0xd019d6b4
xor eax, 0x883496cb
xor edx, eax
mov esi, dword [0x140253854]
mov eax, edx
and eax, esi
shl eax, 1
xor edx, esi
add edx, eax
xor edx, 0xffffffff
mov esi, 0xffffffff
xor esi, 0x7e4f15fb
mov eax, 0xffffffff
xor eax, 0xc0652fbf
or edx, esi
or eax, 0xc0652fbf
mov esi, 0xa947d403
xor esi, 0x56b82bfc
xor edx, esi
and edx, eax
mov esi, 0xf7cf48e5
xor esi, 0x96ed8504
mov eax, edx
and eax, esi
xor edx, 0x6122cde1
or eax, edx
mov esi, 0x8c0acd0b
xor edx, edx
div esi
mov rdx, qword [rbp + 0x38]
movzx ecx, word [rcx + r11*2 + 8]
mov r11d, ecx
mov rcx, r8
shl r11, cl
mov rcx, qword [rbp + 0x20]
mov edi, r11d
mov esi, edi
xor esi, 0xffffffff
mov r11d, r10d
and r11d, esi
mov esi, r10d
xor esi, edi
add r10d, esi
sub r10d, r11d
mov dword [rbp - 0x44], r10d
add r8, r9
mov qword [rbp - 0x40], r8
add rdx, 1
mov qword [rbp - 0x38], rdx
movabs rdx, 0x1e05ad4e4a194294
movabs r8, 0x1e05ad4e4a194295
xor rdx, r8
add rcx, rdx
mov qword [rbp - 0x30], rcx
cmp eax, 0xd0213639
je 0x1401399b9
mov rax, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x40]
mov edx, dword [rbp - 0x44]
mov r8, qword [rbp - 0x38]
mov qword [rbp + 0x50], r8
mov dword [rbp + 0x5c], edx
mov qword [rbp + 0x60], rcx
mov qword [rbp + 0x68], rax
jmp 0x140138f23
mov ecx, dword [0x140253858]
xor ecx, 0x458c19ff
mov edx, dword [0x14025385c]
mov eax, ecx
and eax, edx
shl eax, 1
xor ecx, edx
add ecx, eax
mov edx, 0xffffffff
xor edx, 0xf7ab6675
mov eax, ecx
xor eax, edx
and eax, ecx
and eax, 0x6108ee72
mov ecx, 0xbe3cb009
xor edx, edx
div ecx
cmp eax, 0x67f18bb3
jae 0x1401399c2
mov rdx, qword [rbp + 0x28]
mov eax, dword [0x140253860]
mov r8d, dword [0x140253864]
xor r8d, 0xe16bc22b
xor eax, 0xffffffff
mov ecx, 0xc72504d9
xor ecx, 0x38dafb26
xor r8d, ecx
mov ecx, 0xffffffff
xor ecx, 0x80836b13
or eax, r8d
or ecx, 0x80836b13
xor eax, 0xffffffff
and eax, ecx
add eax, 0x5ec15fce
and eax, 0x918846f
mov ecx, 0x76928a37
xor ecx, 0x76928a37
mov r8d, 0x66d6a8e8
xor r8d, 0x1cc41af3
sub ecx, r8d
sub eax, ecx
mov ecx, 0x57d67507
xor ecx, 0x88804ece
cmp rdx, 0
setg dl
mov byte [rbp - 0x45], dl
cmp eax, ecx
jae 0x1401399c2
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x38]
mov dl, byte [rbp - 0x45]
test dl, 1
mov qword [rbp + 0x78], rcx
mov qword [rbp + 0x80], rax
jne 0x140139404
jmp 0x140138ecb
mov rsi, qword [rbp + 0x2c8]
mov rdi, qword [rbp + 0x48]
mov rbx, qword [rbp + 0x38]
mov r14, qword [rbp + 0x4b0]
mov r9, qword [rbp + 0x28]
mov r8d, dword [rbp + 0x34]
mov rdx, qword [rbp + 0x460]
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov r11, qword [rbp + 0x2d0]
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x20
cmp byte [r14], 0
mov qword [rbp + 0x78], rbx
mov qword [rbp + 0x80], rdi
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
je 0x140138ecb
jmp 0x140139790
mov rax, qword [rbp + 0xe8]
mov rcx, qword [rbp + 0xd8]
cmp rax, rcx
je 0x1401395e8
mov rsi, qword [rbp + 0x2c8]
movabs rcx, 0xa15626a0695ea285
movabs rax, 0xa15626a0695ea2c5
xor rcx, rax
movabs rdx, 0x51b0e62b34a11b3e
movabs rax, 0x51b0e62b34a11b36
xor rdx, rax
sub rsp, 0x20
call fcn.140012610
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402646b8]
mov qword [rcx], rax
lea rax, [0x1402633cc]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140263430]
mov qword [rcx + 0x18], rax
mov rax, qword [str._4_]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x1402633cc]
lea r8, [0x1402633d7]
lea r9, [0x1402633df]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffafb53613
call fcn.14001203f
mov r11, qword [rbp + 0x2d0]
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x30
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jmp 0x140139790
mov rax, qword [rbp + 0x2f0]
mov al, byte [rax + 0x108]
mov byte [rbp - 0x46], al
cmp al, 0
jne 0x1401396ed
mov rsi, qword [rbp + 0x2c8]
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.140012610
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1402646b8]
mov qword [rcx], rax
lea rax, [0x1402633cc]
mov qword [rcx + 0x10], rax
mov rax, qword [0x140263430]
mov qword [rcx + 0x18], rax
mov rax, qword [str._4_]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x1402633cc]
lea r8, [0x1402633d7]
lea r9, [0x1402633df]
sub rsp, 0x30
mov qword [rsp + 0x20], 0xffffffffe7772f0c
call fcn.14001203f
mov r11, qword [rbp + 0x2d0]
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x30
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
jmp 0x140139790
mov rcx, qword [rbp + 0x2e0]
mov rsi, qword [rbp + 0x2c8]
mov rdx, qword [rbp + 0x460]
mov al, byte [rbp - 0x46]
movzx r8d, word [rcx + 0x208]
movzx eax, al
mov r9d, eax
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e060
mov r11, qword [rbp + 0x2d0]
mov r10, qword [rbp + 0x2b8]
mov r9, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x2e8]
mov rdx, qword [rbp + 0x2f0]
mov rcx, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x20
mov qword [rbp + 0x330], rsi
mov qword [rbp + 0x338], r11
mov qword [rbp + 0x340], r10
mov qword [rbp + 0x348], r9
mov qword [rbp + 0x350], r8
mov qword [rbp + 0x358], rdx
mov qword [rbp + 0x360], rcx
mov qword [rbp + 0x368], rax
mov rcx, qword [rbp + 0x480]
mov rax, qword [rbp + 0x428]
mov r8, qword [rbp + 0x330]
mov rdx, qword [rbp + 0x338]
mov r9, qword [rbp + 0x340]
mov r10, qword [rbp + 0x348]
mov r11, qword [rbp + 0x350]
mov rsi, qword [rbp + 0x358]
mov rdi, qword [rbp + 0x360]
mov rbx, qword [rbp + 0x368]
mov qword [rbp - 0x50], rbx
mov qword [rbp - 0x58], rdi
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x68], r11
mov qword [rbp - 0x70], r10
mov qword [rbp - 0x78], r9
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.140021670
mov rdx, qword [rbp - 0x78]
mov rcx, qword [rbp - 0x70]
mov rax, qword [rbp + 0x430]
add rsp, 0x20
mov qword [rbp + 0x4d0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x4d0]
sub rsp, 0x20
call fcn.140024af2
add rsp, 0x20
lea rcx, [rbp + 0xb00]
sub rsp, 0x20
call fcn.140132c96
mov r8, qword [rbp - 0x68]
mov rdx, qword [rbp - 0x60]
mov rax, qword [rbp + 0x438]
mov rcx, qword [rbp + 0x490]
add rsp, 0x20
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.140021670
mov r8, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x50]
mov rax, qword [rbp + 0x440]
mov rcx, qword [rbp + 0x498]
add rsp, 0x20
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.140024af2
add rsp, 0x20
lea rcx, [rbp + 0xb20]
sub rsp, 0x20
call fcn.140132c96
mov rax, qword [rbp + 0x4b0]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1401398dd
mov rax, qword [rbp + 0x370]
mov rcx, rax
and rcx, 1
shl rcx, 1
xor rax, 1
add rax, rcx
mov qword [rbp + 0x448], rax
jmp 0x140136b19
jmp 0x140139927
lea rcx, [rbp + 0xb48]
sub rsp, 0x20
call fcn.14012e3c0
mov rax, qword [rbp + 0x4b0]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x45
xor cl, 0x45
cmp al, cl
jne 0x140139927
mov rcx, qword [rbp + 0x460]
mov rdx, qword [rbp + 0xb48]
sub rsp, 0x20
call fcn.1400141a0
add rsp, 0x20
mov rax, qword [rbp + 0x4a8]
mov rcx, qword [rax]
mov qword [rbp + 0x4c0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x4c8], rax
lea rcx, [rbp + 0x4c0]
sub rsp, 0x20
call fcn.140024af2
nop
lea rsp, [rbp + 0xb58]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
movabs dword [0xffffd87ae905e1b6], eax
or al, 0x29
invalid
loope 0x1401399e2
invalid
jle 0x1401399f5
sub edi, dword [rbp - 0x1aab17]
push qword [rbx + rcx]
xor al, 0xb
cmp byte [rdx - 0x17], bh
push rax
jmp 0xf1c29996
scasb al, byte [rdi]
mov cl, 0xf
or ch, cl
mov cl, 0xed
invalid
hlt
invalid
mov ebx, 0x87e98d92
idiv bh
call qword [rdi]
shl dword [rax + 0x76], 1
jmp 0x1401391fc
invalid
int 0x3d
invalid
push rax
enter 0xffffffffffffd231, 0xfffffffffffffff7
xor eax, 0x119e6e