Function at 0x14010c770
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
sub rsp, 0x2d8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x230], r9
mov qword [rbp + 0x238], r8
mov qword [rbp + 0x240], rdx
mov qword [rbp + 0x248], rcx
mov rax, qword [rbp + 0x290]
mov qword [rbp + 0x250], rax
mov ecx, dword [0x1401cf128]
imul ecx, dword [0x1401cf12c]
mov edx, 0x64e5dda2
xor edx, 0x64e5dda3
mov eax, ecx
add eax, edx
mov edx, 0xdaf1f9a4
xor edx, 0x250e065b
xor ecx, edx
mov edx, 0xcc55adbd
xor edx, 0xee3fb708
or ecx, edx
add ecx, eax
mov edx, 0x5538d0e6
xor edx, 0x948e5a07
mov eax, 0x3ba1616e
xor eax, 0xc45e9e91
xor edx, eax
mov eax, ecx
xor eax, edx
and eax, ecx
mov edx, 0xc9773217
xor edx, 0xfe178997
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0x3760bb80
sub eax, ecx
cmp eax, 0x60204251
ja 0x14010e004
mov eax, dword [0x1401cf130]
xor eax, 0x84390602
mov ecx, dword [0x1401cf134]
xor ecx, 0x4391c08
or eax, ecx
and eax, 0x86b91e2a
add eax, 0x4aea6e27
mov ecx, eax
not ecx
and ecx, 0x1805541c
and eax, 0x87faaa63
sub eax, ecx
mov dword [rbp + 0x214], eax
mov eax, 0x10
mov qword [rbp + 0x1f0], rax
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x1b0], rax
mov eax, 0x20
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1b8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1c0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1c8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1d0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1d8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1e0], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1e8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x1f0]
mov rcx, rsp
mov qword [rbp + 0x1f8], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x200], rax
sub rsp, 0x20
call fcn.14010a235
mov rcx, qword [rbp + 0x250]
add rsp, 0x20
mov qword [rbp + 0x208], rax
mov edx, 0x20
sub rsp, 0x20
call fcn.14010a486
add rsp, 0x20
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001217d
mov r8, qword [rbp + 0x230]
mov rdx, qword [rbp + 0x240]
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x214]
mov qword [rbp + 0x218], rcx
lea r9, [0x1401cef20]
mov qword [rcx], r9
mov r9, rcx
add r9, 0x10
mov qword [rbp + 0x220], r9
mov qword [rcx + 0x10], r8
xor ecx, ecx
test rdx, rdx
cmovg rcx, rdx
mov qword [rbp + 0x228], rcx
cmp eax, 0x5abb01d2
jbe 0x14010c824
xor eax, eax
mov rcx, rax
mov qword [rbp + 0x198], rcx
mov rcx, rax
mov qword [rbp + 0x1a0], rcx
mov qword [rbp + 0x1a8], rax
jmp 0x14010ca16
mov rcx, qword [rbp + 0x228]
mov rax, qword [rbp + 0x198]
mov rdx, qword [rbp + 0x1a0]
mov r8, qword [rbp + 0x1a8]
mov qword [rbp + 0x180], r8
mov qword [rbp + 0x188], rdx
mov qword [rbp + 0x190], rax
cmp rax, rcx
je 0x14010caa9
mov rdx, qword [rbp + 0x190]
mov rax, qword [rbp + 0x180]
mov rcx, qword [rbp + 0x188]
mov r8, qword [rbp + 0x248]
mov r8d, dword [r8 + rdx*4]
cmp r8d, 0
setne r9b
and r9b, 1
movzx r9d, r9b
add rcx, r9
cmp r8d, 0
cmovne rax, rdx
add rdx, 1
mov qword [rbp + 0x198], rdx
mov qword [rbp + 0x1a0], rcx
mov qword [rbp + 0x1a8], rax
jmp 0x14010ca16
mov rcx, qword [rbp + 0x1c0]
mov rdx, qword [rbp + 0x180]
mov rax, qword [rbp + 0x238]
mov r8, rdx
sub r8, rax
cmovg rax, rdx
mov edx, eax
and edx, 1
or rax, 1
add rdx, rax
mov qword [rbp + 0x150], rdx
sub rsp, 0x20
call fcn.140024bdc
mov rax, qword [rbp + 0x1c0]
mov rdx, qword [rbp + 0x150]
mov rcx, qword [rbp + 0x1c8]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rbp + 0x158], r8
mov rax, qword [rax + 8]
mov qword [rbp + 0x160], rax
sub rsp, 0x20
call fcn.140024f77
mov rcx, qword [rbp + 0x1c8]
mov rax, qword [rbp + 0x188]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x168], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x170], rcx
xor ecx, ecx
mov qword [rbp + 0x178], rcx
test rax, rax
je 0x14010cb7d
jmp 0x14010cb59
mov rax, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x188]
sub rcx, 1
mov qword [rbp + 0x148], rax
je 0x14010cb95
jmp 0x14010cc5b
mov rax, qword [rbp + 0x170]
mov byte [rax + 8], 1
mov cl, 0x65
xor cl, 0x64
mov byte [rax + 9], cl
jmp 0x14010d882
mov rcx, qword [rbp + 0x228]
mov rax, qword [rbp + 0x148]
mov qword [rbp + 0x140], rax
cmp rax, rcx
je 0x14010d882
mov rax, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x140]
mov eax, dword [rax + rcx*4]
mov ecx, 0x91c8dbe4
xor ecx, 0x91c8dbe4
cmp eax, ecx
je 0x14010cc2e
mov rax, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x170]
mov byte [rcx + rax + 8], 1
movabs rcx, 0x68397bf6e851fb5c
movabs rdx, 0x68397bf6e851fb5c
xor rcx, rdx
cmp rax, rcx
jne 0x14010cc1a
mov rax, qword [rbp + 0x170]
mov byte [rax + 9], 1
jmp 0x14010d882
mov rax, qword [rbp + 0x170]
mov cl, 0xff
xor cl, 0xfe
mov byte [rax + 8], cl
jmp 0x14010d882
mov rax, qword [rbp + 0x140]
movabs rcx, 0x16d41121abce493a
movabs rdx, 0x16d41121abce493b
xor rcx, rdx
add rax, rcx
mov qword [rbp + 0x148], rax
jmp 0x14010cb95
mov rax, qword [rbp + 0x1d0]
mov qword [rax], 0
mov rcx, rax
add rcx, 8
mov qword [rbp + 0x130], rcx
mov qword [rax + 8], 0
xor eax, eax
mov qword [rbp + 0x138], rax
mov rax, qword [rbp + 0x138]
mov qword [rbp + 0x128], rax
mov eax, dword [0x1401cf138]
xor eax, 0xa874014b
mov edx, dword [0x1401cf13c]
mov r8d, eax
and r8d, edx
mov ecx, 0x78ea9a60
xor ecx, 0x78ea9a62
imul ecx, r8d
add eax, edx
sub eax, ecx
add eax, 0x68313d59
add eax, 0xa02da407
mov edx, eax
xor edx, 0xffffffff
and edx, 0xe5a19e18
mov r8d, 0xffffffff
xor r8d, 0xe5a19e18
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xe5a19e18
or eax, 0xe5a19e18
imul eax, edx
add eax, ecx
cmp eax, 0xbadf967b
je 0x14010e00d
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x228]
mov r10d, dword [0x1401cf140]
mov eax, dword [0x1401cf144]
xor eax, 0x69991d43
xor eax, 0xffffffff
xor r8d, r8d
sub r8d, 1
sub eax, r8d
sub r10d, eax
sub r10d, 0x56d0c4eb
mov eax, r10d
and eax, 0xe38c61dd
shl eax, 1
xor r10d, 0xe38c61dd
add r10d, eax
mov r8d, 0x178c4697
xor r8d, 0xe873b968
mov eax, r10d
xor eax, r8d
and eax, 0x23015369
mov r9d, 0xffffffff
xor r9d, 0x23015369
and r10d, r9d
mov r8d, 0xffffffff
xor r8d, 0xf5818ef7
and r8d, 0x23015369
and r9d, 0xf5818ef7
or eax, r10d
or r8d, r9d
xor eax, r8d
cmp rcx, rdx
sete cl
mov byte [rbp + 0x127], cl
cmp eax, 0x6f72a62c
je 0x14010e00d
mov al, byte [rbp + 0x127]
test al, 1
jne 0x14010cf51
jmp 0x14010cdc9
mov rax, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x128]
mov eax, dword [rax + rcx*4]
mov dword [rbp + 0x120], eax
cmp eax, 0
je 0x14010cf2b
mov eax, dword [0x1401cf148]
xor edx, edx
div dword [0x1401cf14c]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x77145113
add ecx, eax
mov eax, 0xcccd23f3
xor eax, 0xcccd23f3
sub eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x6d5580a7
mov r8d, 0xffffffff
xor r8d, 0x6d5580a7
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xeca7107d
xor r8d, 0x81f290da
mov edx, eax
and edx, r8d
or eax, 0x6d5580a7
imul eax, edx
add eax, ecx
add eax, 0x2e1fffd5
mov ecx, 0xb96744aa
xor ecx, 0xb0cfdc0d
cmp eax, ecx
jae 0x14010e016
mov eax, dword [0x1401cf150]
mov edx, dword [0x1401cf154]
xor edx, 0x136ed14d
mov ecx, eax
xor ecx, edx
xor ecx, 0xffffffff
or eax, edx
and eax, ecx
sub eax, 0x66d25af5
mov ecx, 0xa8ff0841
xor edx, edx
div ecx
and eax, 0xeae5406d
mov dword [rbp + 0x11c], eax
mov eax, 0x6c972cbf
xor eax, 0xbbbd07f4
mov dword [rbp + 0x118], eax
movabs rcx, 0x328c47d64b73fe4
movabs rax, 0x328c47d64b73fc4
xor rcx, rax
movabs rdx, 0x205e1ffab7dd2d24
movabs rax, 0x205e1ffab7dd2d2c
xor rdx, rax
sub rsp, 0x20
call fcn.14001217d
mov r8, qword [rbp + 0x128]
mov rcx, qword [rbp + 0x1d0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x120]
mov qword [rdx], r8
mov eax, eax
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140024fa1
mov ecx, dword [rbp + 0x118]
mov eax, dword [rbp + 0x11c]
add rsp, 0x20
cmp eax, ecx
ja 0x14010ce64
jmp 0x14010cf2b
mov rax, qword [rbp + 0x128]
xor ecx, ecx
sub rcx, rax
xor eax, eax
sub rax, 1
add rcx, rax
xor eax, eax
sub rax, rcx
mov qword [rbp + 0x138], rax
jmp 0x14010cc88
mov rcx, qword [rbp + 0x1d8]
mov edx, 0x10
sub rsp, 0x20
call fcn.14010a486
mov rax, qword [rbp + 0x1d0]
mov rcx, qword [rbp + 0x1e0]
mov rdx, qword [rbp + 0x218]
add rsp, 0x20
mov r8, qword [rax]
mov qword [rcx], r8
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14010b8d0
mov rcx, qword [rbp + 0x208]
add rsp, 0x20
mov byte [rbp + 0x116], al
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x117], al
jne 0x14010d773
mov eax, dword [0x1401cf158]
xor edx, edx
div dword [0x1401cf15c]
add eax, 0xd4e90cef
mov edx, 0xcf3e4184
xor edx, 0xcf3e4185
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x2089f3ae
add eax, ecx
xor eax, 0x9dcbb566
cmp eax, 0xfc771f2e
ja 0x14010e01f
mov r11d, dword [0x1401cf160]
xor r11d, 0x445cf2f5
mov r10d, dword [0x1401cf164]
mov ecx, 0x55bf17a1
xor ecx, 0xaa40e85e
mov eax, r11d
xor eax, ecx
mov edx, r10d
xor edx, 0xffffffff
mov r8d, 0xccf81260
xor r8d, 0xfbf5780c
mov ecx, 0x36648e62
xor ecx, 0xc99b719d
xor r8d, ecx
mov ecx, eax
and ecx, 0x370d6a6c
and r11d, r8d
mov r9d, edx
and r9d, 0x370d6a6c
and r10d, r8d
or ecx, r11d
or r9d, r10d
xor ecx, r9d
or eax, edx
mov edx, 0x974169b2
xor edx, 0x68be964d
xor eax, edx
mov edx, 0x81e39de4
xor edx, 0xb6eef788
or edx, r8d
and eax, edx
or ecx, eax
mov eax, ecx
or eax, 0x884ec56b
mov edx, 0x4a61a34b
xor edx, 0xb59e5cb4
xor eax, edx
mov edx, 0xbdac8bcd
xor edx, 0x35e24ea6
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0x187c04e6
xor ecx, 0xfac50eff
or eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x4a5cd395
mov r8d, 0xfaf4ec46
xor r8d, 0xb0a83fd3
mov ecx, 0x16c1349b
xor ecx, 0xe93ecb64
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x4a5cd395
or eax, 0x4a5cd395
imul eax, edx
add eax, ecx
cmp eax, 0x22fcc88
je 0x14010e01f
mov al, byte [rbp + 0x116]
test al, 1
jne 0x14010d110
jmp 0x14010d6ff
mov rax, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x1d0]
mov rcx, qword [rcx]
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 0x14010d1f6
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, 0xeebc3f55fbba54fd
sub rax, rdx
movabs rdx, 0x329faa52a1011e1
movabs r8, 0x329faa52a1011e0
xor rdx, r8
add rax, rdx
movabs rdx, 0xfe7070e0e7b1beb7
movabs r8, 0x10cc4fb51c0bea4a
xor rdx, r8
add rax, rdx
mov qword [rbp + 0x100], rcx
mov qword [rbp + 0x108], rax
jmp 0x14010d14e
mov rcx, qword [rbp + 0x1e8]
mov rdx, qword [rbp + 0xe8]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 1
add rax, rdx
xor edx, edx
sub rdx, rax
sub rsp, 0x20
call fcn.140025ae5
mov rdx, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x1d0]
mov rax, qword [rbp + 0x130]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0xb8], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xc0], rdx
mov rcx, qword [rcx]
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 0x14010d38c
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, 0xb595bae5525b5f45
add r8, r9
add r8, 1
movabs r9, 0x1b345ddcf5428907
movabs r10, 0xaea1e739a719d642
xor r9, r10
sub r8, r9
mov qword [rcx + rdx*8 + 8], r8
mov rcx, 0xffffffffffffffff
xor rcx, 1
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rbp + 0xd8], rax
jmp 0x14010d274
mov rax, qword [rbp + 0x220]
mov rcx, qword [rbp + 0xa0]
cmp qword [rax], rcx
jge 0x14010d53e
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 0x14010d414
mov rax, qword [rbp + 0xa0]
xor ecx, ecx
sub rcx, rax
xor eax, eax
sub rax, 0xffffffffffffffff
add rcx, rax
movabs rax, 0x9efae71fd2e2bbd3
movabs rdx, 0x9efae71fd2e2bbd3
xor rax, rdx
sub rax, rcx
mov qword [rbp + 0xb0], rax
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
movabs rdx, 0x222bdfeb4352f8c5
mov r8, rcx
add r8, rdx
add r8, 0xfffffffffffffffe
movabs rdx, 0x9fc1d8e1e9a75b11
movabs r9, 0xbdea070aaaf5a3d4
xor rdx, r9
sub r8, rdx
mov qword [rbp + 0x88], r8
mov rdx, r8
sar rdx, 0x3f
and rdx, r8
mov qword [rbp + 0x70], rdx
add rcx, 0xffffffffffffffff
add rax, 8
shl rcx, 3
add rax, rcx
mov qword [rbp + 0x78], rax
jmp 0x14010d316
mov rax, qword [rbp + 0x70]
mov rcx, qword [rbp + 0x98]
mov qword [rbp + 0x60], rcx
cmp rcx, 0
mov qword [rbp + 0x68], rax
jle 0x14010d45d
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 + 0x68], rax
je 0x14010d414
mov rax, qword [rbp + 0x68]
mov qword [rbp + 0x58], rax
mov r8d, dword [0x1401cf168]
and r8d, dword [0x1401cf16c]
and r8d, 0x8ee5682
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x5ed7e26d
mov r9d, 0xffffffff
xor r9d, 0x5ed7e26d
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0xec8e627
and ecx, 0x5ed7e26d
mov edx, 0x4574e8c0
xor edx, 0x4bbc0ee7
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0xd9b2f88a
xor ecx, 0x510b732c
sub eax, ecx
mov ecx, 0x847a7d87
xor ecx, 0x1d9a24b3
cmp eax, ecx
jae 0x14010e028
mov rcx, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0x58]
mov r8, qword [rbp + 0x78]
mov r9, qword [rbp + 0x80]
mov r10, qword [rbp + 0x90]
xor eax, eax
add r10, 0xfffffffffffffffe
mov qword [r9], r10
mov r9, qword [r8]
inc r9
mov qword [r8], r9
movups xmm0, xmmword [rcx + rdx*8 + 8]
movaps xmm2, xmmword [0x1401dc840]
movaps xmm1, xmm0
paddq xmm1, xmm2
movaps xmm1, xmmword [0x1401dc850]
paddq xmm0, xmm1
movdqu xmmword [rcx + rdx*8 + 8], xmm0
cmp eax, 0xe707aaac
jae 0x14010d4db
jmp 0x14010d316
mov rcx, qword [rbp + 0x1d0]
mov r8, qword [rcx]
mov rax, r8
and rax, 0xffffffffffffffff
shl rax, 1
xor r8, 0xffffffffffffffff
add r8, rax
xor eax, eax
mov edx, eax
sub rsp, 0x20
call fcn.14010c260
mov rax, qword [rbp + 0x208]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14010d6be
mov rax, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x1d0]
mov rcx, qword [rcx]
mov rax, qword [rax]
mov qword [rbp + 0x38], rax
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x40], rax
mov ecx, 1
xor eax, eax
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x50], rax
mov rdx, qword [rbp + 0x40]
mov rax, qword [rbp + 0x48]
mov rcx, qword [rbp + 0x50]
mov qword [rbp + 0x28], rcx
cmp rcx, rdx
mov qword [rbp + 0x30], rax
je 0x14010d6be
mov rax, qword [rbp + 0x30]
mov rcx, qword [rbp + 0xc0]
mov qword [rbp + 0x20], rax
mov rcx, qword [rcx + rax*8 + 8]
movabs rdx, 0xbf6828bc07e7a475
sub rax, rdx
add rax, 1
movabs rdx, 0x2da59b9fd0e692b7
movabs r8, 0x92cdb323d70136c2
xor rdx, r8
add rax, rdx
cmp rcx, 0
mov qword [rbp + 0x30], rax
je 0x14010d5cc
mov rcx, qword [rbp + 0x20]
mov rax, qword [rbp + 0x28]
mov rdx, qword [rbp + 0xc0]
mov r8, qword [rbp + 0x38]
mov r8, qword [r8 + rax*8 + 8]
mov qword [r8 + 8], rcx
mov r8, qword [rdx + rcx*8 + 8]
movabs r9, 0x89895092ebb8dc2a
movabs r10, 0x7676af6d144723d5
xor r9, r10
movabs r10, 0x5dc1506abf5f7855
movabs r11, 0xa23eaf9540a087aa
xor r10, r11
xor r9, r10
xor r10d, r10d
sub r10, 1
sub r9, r10
sub r8, r9
mov qword [rdx + rcx*8 + 8], r8
movabs rdx, 0xd06880c0f63893b7
movabs r8, 0xd06880c0f63893b7
xor rdx, r8
movabs r8, 0x2a90236d3909330a
movabs r9, 0x2a90236d3909330b
xor r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rbp + 0x48], rcx
mov qword [rbp + 0x50], rax
jmp 0x14010d5af
mov rcx, qword [rbp + 0x1f8]
mov rax, qword [rbp + 0xc0]
mov rdx, qword [rbp + 0xb8]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.14005ee5c
mov rcx, qword [rbp + 0x208]
add rsp, 0x20
mov al, 1
cmp byte [rcx], 0
mov byte [rbp + 0x117], al
jne 0x14010d773
mov rax, qword [rbp + 0x1d0]
mov rcx, qword [rax]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x10], rax
xor eax, eax
mov qword [rbp + 0x18], rax
mov rcx, qword [rbp + 0x10]
mov rax, qword [rbp + 0x18]
mov qword [rbp + 8], rax
cmp rax, rcx
je 0x14010d764
mov rax, qword [rbp + 8]
mov rcx, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x130]
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 + 0x18], rax
jmp 0x14010d71c
mov rax, qword [rbp + 0x208]
mov al, byte [rax]
mov byte [rbp + 0x117], al
mov rdx, qword [rbp + 0x208]
mov rcx, qword [rbp + 0x200]
mov rax, qword [rbp + 0x1d0]
mov r8b, byte [rbp + 0x117]
mov byte [rbp + 7], r8b
mov byte [rdx], 0
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1401098c0
mov rax, qword [rbp + 0x208]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14010d7d5
mov al, byte [rbp + 7]
mov rcx, qword [rbp + 0x208]
mov byte [rcx], al
cmp al, 0
je 0x14010d882
mov eax, dword [0x1401cf178]
xor eax, 0x632cbf2c
xor edx, edx
div dword [0x1401cf17c]
mov ecx, 0xa1e5bab
xor ecx, 0xa0b66e4d
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x408580
mov eax, ecx
and eax, 0xa95efb33
mov edx, 0x4e3b212f
xor edx, 0xb1c4ded0
xor eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa95efb33
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0x398f3816
jae 0x14010e031
mov eax, dword [0x1401cf180]
mov ecx, 0x1d636d25
xor ecx, 0x93204f53
xor eax, ecx
and eax, dword [0x1401cf184]
sub eax, 0x589cecd1
mov ecx, 0x502de139
xor ecx, 0xd3d72c9b
sub eax, ecx
add eax, 0x589cecd1
imul eax, eax, 0xb019fa36
mov ecx, 0xc5fe6271
xor edx, edx
div ecx
cmp eax, 0xc7e74e82
jae 0x14010e031
jmp 0x14010dede
mov ecx, dword [0x1401cf188]
xor ecx, 0x686b7185
and ecx, dword [0x1401cf18c]
add ecx, 0x16cf6f33
mov eax, 0xffffffff
xor eax, 0x6405d02a
mov edx, 0x602cb45f
xor edx, 0x602cb45f
mov r8d, 0x10b6b072
xor r8d, 0x10b6b073
sub edx, r8d
sub eax, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xbaa8c392
mov edx, 0x649d6bf3
xor edx, 0xde35a861
mov r8d, 0xc92bbca1
xor r8d, 0x36d4435e
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
cmp eax, 0xd8f4743b
ja 0x14010e03a
mov rcx, qword [rbp + 0x1b0]
mov eax, dword [0x1401cf190]
mov edx, dword [0x1401cf194]
xor edx, 0x81271a21
and eax, edx
add eax, 0x8ae6c333
mov r8d, 0xaa3b5ae8
xor edx, edx
div r8d
mov edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, edx
xor r8d, 0xffffffff
and eax, r8d
mov r8d, 0xa7988202
xor r8d, 0x1b77a434
mov r9d, 0x909ad9b
xor r9d, 0xb5e68bad
or r8d, r9d
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0xe6f7571
xor r8d, 0xf1908a8e
xor eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xbcef2636
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov dword [rbp - 0xc], eax
mov eax, 0xe0870034
xor eax, 0xd1ff7222
mov dword [rbp - 0x10], eax
mov edx, 0x10
sub rsp, 0x20
call fcn.14010a486
mov r8, qword [rbp + 0x168]
mov ecx, dword [rbp - 0x10]
mov eax, dword [rbp - 0xc]
add rsp, 0x20
xor edx, edx
test r8, r8
cmovg rdx, r8
mov qword [rbp - 8], rdx
cmp eax, ecx
je 0x14010d908
xor eax, eax
mov qword [rbp - 0x18], rax
jmp 0x14010d9e2
mov rcx, qword [rbp - 8]
mov rax, qword [rbp - 0x18]
mov qword [rbp - 0x20], rax
cmp rax, rcx
je 0x14010da55
mov rax, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x1b0]
mov rdx, qword [rbp + 0x170]
movzx edx, byte [rdx + rax + 8]
mov r8b, byte [rcx + rdx]
mov r9b, 4
xor r9b, 0x90
sub r8b, r9b
add r8b, 1
mov r9b, 0x5c
xor r9b, 0xc8
add r8b, r9b
mov byte [rcx + rdx], r8b
movabs rcx, 0xf6668d364781f89c
add rax, rcx
add rax, 1
movabs rcx, 0xf6668d364781f89c
sub rax, rcx
mov qword [rbp - 0x18], rax
jmp 0x14010d9e2
mov eax, dword [0x1401cf198]
mov ecx, dword [0x1401cf19c]
xor ecx, 0xd908aaf1
and eax, ecx
mov ecx, 0xeac1f63f
xor edx, edx
div ecx
mov ecx, 0x129b0e39
xor ecx, 0x9fafaa50
xor edx, edx
div ecx
sub eax, 0xaa1c84c2
cmp eax, 0x121d41ca
je 0x14010e043
mov rcx, qword [rbp + 0x1b8]
mov eax, dword [0x1401cf1a0]
xor eax, 0x7fe03856
mov r9d, dword [0x1401cf1a4]
xor r9d, 0x6263212f
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0xc1306213
xor edx, edx
div r8d
mov r8d, 0x75f0a172
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp + 0x1b0]
mov r8d, 0xf7d122d9
xor r8d, 0xaf5da708
xor edx, r8d
mov dword [rbp - 0x24], edx
mov edx, 0x298de843
xor edx, 0x2f3c0a5
mov dword [rbp - 0x28], edx
mov byte [rax], 0
movabs rdx, 0x17ade40f15866a93
movabs rax, 0x17ade40f15866ab3
xor rdx, rax
sub rsp, 0x20
call fcn.14010a486
mov ecx, dword [rbp - 0x28]
mov eax, dword [rbp - 0x24]
add rsp, 0x20
cmp eax, ecx
jbe 0x14010da91
mov eax, 1
mov qword [rbp - 0x30], rax
jmp 0x14010db5c
mov rax, qword [rbp - 0x30]
mov qword [rbp - 0x38], rax
movabs rcx, 0xb7c0af355adcaf10
movabs rdx, 0xb7c0af355adcaf00
xor rcx, rdx
cmp rax, rcx
jne 0x14010dba3
mov rcx, qword [rbp + 0x158]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp - 0x48], rax
xor eax, eax
mov qword [rbp - 0x40], rax
jmp 0x14010ddcd
mov r11d, dword [0x1401cf1a8]
mov ecx, dword [0x1401cf1ac]
mov eax, r11d
xor eax, ecx
mov edx, 0xb679b06
xor edx, 0xf49864f9
xor eax, edx
or r11d, ecx
and r11d, eax
mov edx, 0xffffffff
xor edx, 0xde08a014
mov ecx, r11d
and ecx, edx
mov eax, r11d
or eax, edx
xor eax, 0xffffffff
imul eax, ecx
mov edx, 0x495529d5
xor edx, 0x975d89c1
mov ecx, r11d
and ecx, edx
or r11d, 0xde08a014
imul r11d, ecx
add r11d, eax
add r11d, 0xddc6efcf
mov eax, 0x800e00ed
xor eax, 0x7ff1ff12
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0xe88f3fc3
mov edx, 0x2269b9ef
xor edx, 0x2dc01e7d
mov eax, 0xa2ee0fea
xor eax, 0x5d11f015
xor edx, eax
mov eax, ecx
and eax, 0xfa9a792
and r11d, edx
mov r9d, r8d
and r9d, 0xfa9a792
mov r10d, edx
and r10d, 0xe88f3fc3
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xfa9a792
and ecx, edx
or eax, ecx
cmp eax, 0xbf44e5ff
je 0x14010e04c
mov rcx, qword [rbp - 0x38]
mov rdx, qword [rbp + 0x1b8]
mov r9, qword [rbp + 0x1b0]
mov eax, dword [0x1401cf1b0]
mov r11d, dword [0x1401cf1b4]
mov r8d, eax
xor r8d, 0xffffffff
mov esi, 0xcad0c07a
xor esi, 0x352f3f85
mov r10d, eax
xor r10d, esi
or r8d, r10d
xor r8d, 0xffffffff
mov r10d, r11d
xor r10d, 0xffffffff
or r8d, r10d
mov esi, 0x20368b1d
xor esi, 0xdfc974e2
mov r10d, r11d
xor r10d, esi
xor r11d, 0xffffffff
or r10d, r11d
and eax, r10d
xor eax, 0xffffffff
and r8d, eax
xor r8d, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0xebd9403f
mov eax, r8d
xor eax, r10d
and eax, r8d
and eax, eax
xor eax, 0xffffffff
mov r8d, 0xd303d246
xor r8d, 0xca48bfd1
mov r10d, 0x811441f2
xor r10d, 0x985f2c65
and r8d, r10d
xor r8d, 0xffffffff
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0xe5573fa8
xor r8d, 0x59e5af12
and r8d, eax
xor r8d, 0xffffffff
add eax, 0xbcb290ba
add eax, 1
add eax, r8d
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
xor r10d, r10d
sub r10, 1
sub r8, r10
mov r10, rcx
sub r10, r8
mov r8w, word [rdx + r10*2]
movzx r9d, byte [r9 + r10]
xor r9w, 0xffff
xor r10d, r10d
sub r10w, 1
sub r9w, r10w
sub r8w, r9w
shl r8w, 1
mov word [rdx + rcx*2], r8w
movabs rdx, 0xf8317477d4a04de
sub rcx, rdx
add rcx, 1
movabs rdx, 0xf8317477d4a04de
add rcx, rdx
mov qword [rbp - 0x50], rcx
cmp eax, 0x485aa9f2
je 0x14010e04c
mov rax, qword [rbp - 0x50]
mov qword [rbp - 0x30], rax
jmp 0x14010db5c
mov rcx, qword [rbp - 0x48]
mov rax, qword [rbp - 0x40]
mov qword [rbp - 0x58], rax
cmp rax, rcx
je 0x14010deac
mov rax, qword [rbp + 0x170]
mov rcx, qword [rbp - 0x58]
mov rdx, rax
add rdx, 8
add rdx, rcx
mov qword [rbp - 0x68], rdx
mov al, byte [rax + rcx + 8]
mov byte [rbp - 0x59], al
mov cl, 0x33
xor cl, 0x33
cmp al, cl
je 0x14010de9b
mov rax, qword [rbp + 0x1b8]
mov cl, byte [rbp - 0x59]
movzx ecx, cl
mov cx, word [rax + rcx*2]
sub rsp, 0x20
call fcn.1400329a0
add rsp, 0x20
mov cx, ax
mov rax, qword [rbp + 0x208]
mov word [rbp - 0x6a], cx
mov al, byte [rax]
mov cl, 0xa5
xor cl, 0xa5
cmp al, cl
jne 0x14010dede
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp - 0x68]
mov rdx, qword [rbp + 0x160]
mov r8, qword [rbp - 0x58]
mov r9w, word [rbp - 0x6a]
movzx r9d, r9w
mov r10b, byte [rcx]
mov cl, 0xeb
xor cl, 0xfb
sub cl, r10b
movzx ecx, cl
shr r9d, cl
mov rcx, qword [rbp - 0x68]
mov word [rdx + r8*2 + 8], r9w
movzx ecx, byte [rcx]
mov dx, word [rax + rcx*2]
xor r8d, r8d
sub r8w, 1
sub dx, r8w
mov word [rax + rcx*2], dx
mov rax, qword [rbp - 0x58]
add rax, 1
mov qword [rbp - 0x40], rax
jmp 0x14010ddcd
mov rax, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x170]
mov rdx, qword [rbp + 0x168]
mov r8, qword [rbp + 0x160]
mov r9, qword [rbp + 0x158]
mov qword [rax], r9
mov qword [rax + 8], r8
mov qword [rax + 0x10], rdx
mov qword [rax + 0x18], rcx
mov edx, dword [0x1401cf1b8]
mov eax, 0x88367614
xor eax, 0x93260fc3
xor edx, eax
mov ecx, dword [str.6D_a]
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
or ecx, ecx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x6d8d36d9
xor ecx, 0x9272c926
xor eax, ecx
mov edx, 0x4fa5f86c
xor edx, 0x4fa5f86d
mov ecx, eax
add ecx, edx
mov edx, 0x5a41eb0e
xor edx, 0xa5be14f1
xor eax, edx
or eax, 0xf21e5772
add eax, ecx
mov ecx, 0x7b19479e
xor edx, edx
div ecx
mov ecx, 0x98b1a198
xor ecx, 0x5b517475
xor edx, edx
div ecx
cmp eax, 0x6765f2f0
ja 0x14010e055
mov rcx, qword [rbp + 0x218]
mov edx, dword [0x1401cf1c0]
mov eax, dword [0x1401cf1c4]
xor eax, 0x585ac368
imul edx, eax
or edx, 0x423ae94e
mov eax, edx
and eax, eax
xor eax, 0xffffffff
and eax, 0x3d088ff4
mov r8d, 0xf8e363d
xor r8d, 0xf071c9c2
xor eax, r8d
mov r8d, 0x29d2e023
xor r8d, 0x14da6fd7
mov r9d, 0x614fda5a
xor r9d, 0x5c4755ae
and r8d, r9d
xor r8d, 0xffffffff
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
xor eax, 0xc4e670c1
mov dword [rbp - 0x70], eax
mov eax, 0x80b80461
xor eax, 0x70819c48
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.14010c741
mov ecx, dword [rbp - 0x74]
mov eax, dword [rbp - 0x70]
add rsp, 0x20
cmp eax, ecx
ja 0x14010e055
lea rsp, [rbp + 0x258]
pop rsi
pop rbp
ret
loope 0x14010e061
xchg esp, eax
xchg esp, eax
jmp 0x14010c824
movabs eax, dword [0xffffecf1e9c7b974]
pop rdx
cmp eax, 0xee45e9b9
invalid
mov dword [rbx - 0x3316c77d], esi
out dx, eax
invalid
retf
movsd dword [rdi], dword [rsi]
invalid
invalid
movabs al, byte [0xfffffa45e93996e6]
push bx
insb byte [rdi], dx
jmp 0x14010dc7d
ret
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xb68
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x488], r9
mov qword [rbp + 0x410], r8
mov qword [rbp + 0x418], rdx
mov qword [rbp + 0x420], rcx
mov eax, 0x10
mov qword [rbp + 0x468], rax
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x468]
mov rcx, rsp
mov qword [rbp + 0x480], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x468]
mov rcx, rsp
mov qword [rbp + 0x428], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x430], rax
mov eax, 0x20
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x468]
mov rcx, rsp
mov qword [rbp + 0x438], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x440], rax
mov eax, 0x140
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x448], rax
mov eax, 0x30
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x468]
mov rcx, rsp
mov qword [rbp + 0x450], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x468]
mov rcx, rsp
mov qword [rbp + 0x458], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x468]
mov rcx, rsp
mov qword [rbp + 0x460], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, qword [rbp + 0x468]
mov rcx, rsp
mov qword [rbp + 0x470], rcx
call fcn.1401c7680
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x478], rax
sub rsp, 0x20
call fcn.14010a235
mov rcx, qword [rbp + 0x480]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x488]
mov qword [rbp + 0x490], rdx
mov qword [rcx], 0
mov rdx, rcx
add rdx, 8
mov qword [rbp + 0x498], rdx
mov qword [rcx + 8], 0
mov rcx, rax
and rcx, 0xfffffffffffffff6
movabs rdx, 0xa02590a36ef2ce60
movabs r8, 0xa02590a36ef2ce62
xor rdx, r8
imul rcx, rdx
movabs rdx, 0xb90bd20fb331be69
movabs r8, 0x46f42df04cce419f
xor rdx, r8
xor rax, rdx
add rax, rcx
movabs rcx, 0x35310787da8502b4
movabs rdx, 0xcacef878257afd40
xor rcx, rdx
cmp rax, rcx
jae 0x14010e2c7
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.14001217d
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1401dd720]
mov qword [rcx], rax
lea rax, [0x1401dc87c]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401dc8e0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401dc8e8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
lea rdx, [0x1401dc87c]
lea r8, [0x1401dc887]
lea r9, [0x1401dc88f]
sub rsp, 0x30
mov qword [rsp + 0x20], 0x76fd2c19
call fcn.1400120ce
add rsp, 0x30
jmp 0x140110f62
mov rsi, qword [rbp + 0x428]
mov rbx, qword [rbp + 0x410]
lea rcx, [rbp + 0xad8]
mov edx, 0x10
sub rsp, 0x20
call fcn.14010a486
mov r11, qword [rbp + 0x420]
mov r10, qword [rbp + 0x430]
mov r9, qword [rbp + 0x488]
mov r8, qword [rbp + 0x440]
mov rdx, qword [rbp + 0x460]
mov rcx, qword [rbp + 0x470]
mov rax, qword [rbp + 0x478]
add rsp, 0x20
mov r11, qword [r11]
mov qword [rbp + 0xad8], r11
xor r11d, r11d
mov edi, r11d
sub rdi, 0x3fffff
mov r11, rbx
sub r11, rdi
shr r11, 0x16
movabs r14, 0xd6dff736414f7d33
movabs rdi, 0xd6dff736414f7d32
xor r14, rdi
mov edi, 1
cmp rbx, r14
cmovl r11, rdi
mov qword [rbp + 0x338], r11
movabs rdi, 0xef8dfc8f2a5d312c
movabs rbx, 0xef8dfc8f2a5d312c
xor rdi, rbx
mov qword [rsi], rdi
add r11, 0xffffffffffffffff
mov qword [rbp + 0x340], r11
cmp r9, 0xfffffffffffffffe
sete r11b
mov byte [rbp + 0x34f], r11b
lea r11, [rbp + 0x5a0]
add r11, 0x4f0
mov qword [rbp + 0x350], r11
add r10, 8
mov qword [rbp + 0x358], r10
lea r10, [rbp + 0x590]
add r10, 8
mov qword [rbp + 0x360], r10
lea r10, [rbp + 0x580]
add r10, 8
mov qword [rbp + 0x368], r10
lea r10, [rbp + 0x570]
add r10, 8
mov qword [rbp + 0x370], r10
cmp r9, 7
setl r9b
mov byte [rbp + 0x37f], r9b
lea r9, [rbp + 0xab8]
add r9, 8
mov qword [rbp + 0x380], r9
lea r9, [rbp + 0xab8]
add r9, 0x10
mov qword [rbp + 0x388], r9
lea r9, [rbp + 0xab8]
add r9, 0x18
mov qword [rbp + 0x390], r9
lea r9, [rbp + 0x5a0]
add r9, 0x478
mov qword [rbp + 0x398], r9
lea r9, [rbp + 0xa98]
add r9, 8
mov qword [rbp + 0x3a0], r9
lea r9, [rbp + 0xa98]
add r9, 0x10
mov qword [rbp + 0x3a8], r9
lea r9, [rbp + 0xa98]
add r9, 0x18
mov qword [rbp + 0x3b0], r9
add r8, 8
mov qword [rbp + 0x3b8], r8
lea r8, [rbp + 0x530]
add r8, 8
mov qword [rbp + 0x3c0], r8
lea r8, [rbp + 0x530]
add r8, 0x10
mov qword [rbp + 0x3c8], r8
lea r8, [rbp + 0x530]
add r8, 0x18
mov qword [rbp + 0x3d0], r8
lea r8, [rbp + 0x4d0]
add r8, 8
mov qword [rbp + 0x3d8], r8
lea r8, [rbp + 0x4c0]
add r8, 8
mov qword [rbp + 0x3e0], r8
add rdx, 8
mov qword [rbp + 0x3e8], rdx
add rcx, 8
mov qword [rbp + 0x3f0], rcx
lea rcx, [rbp + 0x4b0]
add rcx, 8
mov qword [rbp + 0x3f8], rcx
add rax, 8
mov qword [rbp + 0x400], rax
xor eax, eax
mov qword [rbp + 0x408], rax
mov rcx, qword [rbp + 0x338]
mov rax, qword [rbp + 0x408]
mov qword [rbp + 0x330], rax
cmp rax, rcx
je 0x140110f23
lea rcx, [rbp + 0xab8]
mov edx, 0x20
sub rsp, 0x20
call fcn.14010a486
add rsp, 0x20
lea rcx, [rbp + 0xa98]
mov edx, 0x20
sub rsp, 0x20
call fcn.14010a486
mov r9, qword [rbp + 0x410]
mov rdx, qword [rbp + 0x340]
mov r8, qword [rbp + 0x330]
mov rax, qword [rbp + 0x428]
add rsp, 0x20
movabs rcx, 0xa29b936e95989903
movabs r10, 0xa29b936e95989915
xor rcx, r10
shl r8, cl
mov rcx, qword [rbp + 0x330]
mov qword [rbp + 0x2d8], r8
sub r9, r8
mov r8, r9
sub r8, 0x400000
mov r8d, 0x400000
cmovl r8, r9
mov qword [rbp + 0x2e0], r8
cmp rcx, rdx
sete cl
mov byte [rbp + 0x2d7], cl
mov qword [rax], 0
lea rcx, [rbp + 0x5a0]
mov edx, 0x4f8
sub rsp, 0x20
call fcn.14010a486
mov rcx, qword [rbp + 0x480]
mov rdx, qword [rbp + 0x428]
mov r11, qword [rbp + 0x418]
mov r10, qword [rbp + 0x2d8]
mov rax, qword [rbp + 0x2e0]
add rsp, 0x20
mov r8, qword [0x1401dda98]
lea r9, [rbp + 0x5a0]
sub rsp, 0x40
mov qword [rsp + 0x20], r11
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x30], rax
call fcn.140105e50
mov rax, qword [rbp + 0x490]
add rsp, 0x40
mov cl, byte [rax]
mov dl, 0x8a
xor dl, 0x8a
xor eax, eax
mov qword [rbp + 0x2e8], rax
cmp cl, dl
mov rcx, rax
mov qword [rbp + 0x2f0], rcx
mov rcx, rax
mov qword [rbp + 0x2f8], rcx
mov rcx, rax
mov qword [rbp + 0x300], rcx
mov rcx, rax
mov qword [rbp + 0x308], rcx
mov rcx, rax
mov qword [rbp + 0x310], rcx
mov rcx, rax
mov qword [rbp + 0x318], rcx
mov rcx, rax
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110da5
mov al, byte [rbp + 0x34f]
test al, 1
jne 0x14010e88f
jmp 0x14010e6cf
mov rax, qword [rbp + 0x350]
mov rcx, qword [rbp + 0x2e0]
cvtsi2ss xmm0, rcx
cvtss2sd xmm0, xmm0
movsd xmm1, qword [0x1401dc860]
mulsd xmm0, xmm1
cvttsd2si rcx, xmm0
cmp qword [rax], rcx
jl 0x14010e88f
mov r9, qword [rbp + 0x2d8]
mov r8, qword [rbp + 0x418]
mov rdx, qword [rbp + 0x420]
mov rcx, qword [rbp + 0x2e0]
mov r10b, byte [rbp + 0x2d7]
sub rsp, 0x30
and r10b, 1
mov rax, rsp
mov byte [rax + 0x28], r10b
mov qword [rax + 0x20], rcx
lea rcx, [rbp + 0xad8]
call fcn.140109dc0
mov rax, qword [rbp + 0x490]
add rsp, 0x30
mov cl, byte [rax]
mov dl, 0x33
xor dl, 0x33
xor eax, eax
mov qword [rbp + 0x2c8], rax
cmp cl, dl
mov rcx, rax
mov qword [rbp + 0x2f0], rcx
mov rcx, rax
mov qword [rbp + 0x2f8], rcx
mov rcx, rax
mov qword [rbp + 0x300], rcx
mov rcx, rax
mov qword [rbp + 0x308], rcx
mov rcx, rax
mov qword [rbp + 0x310], rcx
mov rcx, rax
mov qword [rbp + 0x318], rcx
mov rcx, rax
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110da5
mov rcx, qword [rbp + 0x430]
mov rax, qword [rbp + 0x358]
mov qword [rcx], 0
mov qword [rax], 0
sub rsp, 0x20
call fcn.140024c06
mov rax, qword [rbp + 0x360]
add rsp, 0x20
mov qword [rbp + 0x590], 0
mov qword [rax], 0
lea rcx, [rbp + 0x590]
sub rsp, 0x20
call fcn.140024b00
add rsp, 0x20
lea rcx, [rbp + 0xa98]
sub rsp, 0x20
call fcn.14010a250
mov rax, qword [rbp + 0x368]
add rsp, 0x20
mov qword [rbp + 0x580], 0
mov qword [rax], 0
lea rcx, [rbp + 0x580]
sub rsp, 0x20
call fcn.140024c06
mov rax, qword [rbp + 0x370]
add rsp, 0x20
mov qword [rbp + 0x570], 0
mov qword [rax], 0
lea rcx, [rbp + 0x570]
sub rsp, 0x20
call fcn.140024b00
add rsp, 0x20
lea rcx, [rbp + 0xab8]
sub rsp, 0x20
call fcn.14010a250
add rsp, 0x20
jmp 0x140110ed3
mov al, byte [rbp + 0x37f]
mov rcx, qword [rbp + 0x2e0]
sub rcx, 0x801
setl cl
and al, cl
mov byte [rbp + 0x2c7], al
test al, 1
jne 0x14010e8bb
jmp 0x14010e938
mov rcx, qword [rbp + 0x438]
movabs rdx, 0x3eb39e3309428b38
movabs rax, 0x3eb39e3309428b18
xor rdx, rax
sub rsp, 0x20
call fcn.14010a486
mov rdx, qword [rbp + 0x438]
add rsp, 0x20
lea rcx, [0x1401dc8a0]
sub rsp, 0x20
call fcn.14010a3e9
mov rax, qword [rbp + 0x438]
add rsp, 0x20
mov rcx, qword [rax]
mov qword [rbp + 0xab8], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0xac0], rcx
mov rcx, qword [rax + 0x10]
mov qword [rbp + 0xac8], rcx
mov rax, qword [rax + 0x18]
mov qword [rbp + 0xad0], rax
jmp 0x14010e9cf
lea rcx, [rbp + 0x5a0]
mov edx, 0x11e
mov r8d, 0x101
mov r9d, 0xf
lea rax, [rbp + 0xab8]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14010c770
mov rcx, qword [rbp + 0x490]
add rsp, 0x30
xor eax, eax
mov qword [rbp + 0x2b8], rax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x2f0], rcx
mov rcx, rax
mov qword [rbp + 0x2f8], rcx
mov rcx, rax
mov qword [rbp + 0x300], rcx
mov rcx, rax
mov qword [rbp + 0x308], rcx
mov rcx, rax
mov qword [rbp + 0x310], rcx
mov rcx, rax
mov qword [rbp + 0x318], rcx
mov rcx, rax
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110da5
mov rax, qword [rbp + 0x380]
mov rcx, qword [rbp + 0xab8]
mov qword [rbp + 0x298], rcx
mov rax, qword [rax]
mov qword [rbp + 0x2a0], rax
lea rcx, [rbp + 0xab8]
sub rsp, 0x20
call fcn.140025b0f
mov rax, qword [rbp + 0x390]
mov rcx, qword [rbp + 0x388]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x2a8], rdx
mov rax, qword [rax]
mov qword [rbp + 0x2b0], rax
sub rsp, 0x20
call fcn.140025b1f
mov al, byte [rbp + 0x2c7]
add rsp, 0x20
test al, 1
jne 0x14010ea44
jmp 0x14010eab5
lea rcx, [rbp + 0x550]
mov edx, 0x20
sub rsp, 0x20
call fcn.14010a486
add rsp, 0x20
lea rcx, [0x1401dc8c0]
lea rdx, [rbp + 0x550]
sub rsp, 0x20
call fcn.14010a3e9
add rsp, 0x20
mov rax, qword [rbp + 0x550]
mov qword [rbp + 0xa98], rax
mov rax, qword [rbp + 0x558]
mov qword [rbp + 0xaa0], rax
mov rax, qword [rbp + 0x560]
mov qword [rbp + 0xaa8], rax
mov rax, qword [rbp + 0x568]
mov qword [rbp + 0xab0], rax
jmp 0x14010eb57
mov rcx, qword [rbp + 0x398]
mov edx, 0x1e
mov r8d, 2
mov r9d, 0xf
lea rax, [rbp + 0xa98]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.14010c770
mov r10, qword [rbp + 0x490]
mov r8, qword [rbp + 0x2a8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a0]
add rsp, 0x30
xor r9d, r9d
cmp byte [r10], 0
mov r10, r9
mov qword [rbp + 0x2f0], r10
mov r10, r9
mov qword [rbp + 0x2f8], r10
mov r10, r9
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110da5
mov rax, qword [rbp + 0x3a0]
mov rcx, qword [rbp + 0xa98]
mov qword [rbp + 0x278], rcx
mov rax, qword [rax]
mov qword [rbp + 0x280], rax
lea rcx, [rbp + 0xa98]
sub rsp, 0x20
call fcn.140025b0f
mov rax, qword [rbp + 0x3b0]
mov rcx, qword [rbp + 0x3a8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x288], rdx
mov rax, qword [rax]
mov qword [rbp + 0x290], rax
sub rsp, 0x20
call fcn.140025b1f
mov al, byte [rbp + 0x2c7]
add rsp, 0x20
test al, 1
jne 0x14010ebcc
jmp 0x14010ed2e
mov rsi, qword [rbp + 0x288]
mov rdi, qword [rbp + 0x490]
mov rdx, qword [rbp + 0x420]
mov al, byte [rbp + 0x2d7]
and al, 1
movzx r8d, al
lea rcx, [rbp + 0xad8]
mov r9d, 1
sub rsp, 0x20
call fcn.140105680
mov r11, qword [rbp + 0x290]
mov r10, qword [rbp + 0x278]
mov r9, qword [rbp + 0x280]
mov r8, qword [rbp + 0x2a8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a0]
add rsp, 0x20
mov bl, byte [rdi]
mov dil, 0x33
xor dil, 0x33
cmp bl, dil
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110da5
mov rsi, qword [rbp + 0x288]
mov rdi, qword [rbp + 0x490]
mov rdx, qword [rbp + 0x420]
lea rcx, [rbp + 0xad8]
mov r8d, 1
mov r9d, 2
sub rsp, 0x20
call fcn.140105680
mov r11, qword [rbp + 0x290]
mov r10, qword [rbp + 0x278]
mov r9, qword [rbp + 0x280]
mov r8, qword [rbp + 0x2a8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a0]
add rsp, 0x20
cmp byte [rdi], 0
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
je 0x14010feed
jmp 0x140110da5
mov rax, qword [rbp + 0x3b8]
mov rcx, qword [rbp + 0x440]
movabs rdx, 0x3677e70830744039
movabs r8, 0x3677e70830744039
xor rdx, r8
mov qword [rcx], rdx
mov qword [rax], 0
lea rcx, [rbp + 0x530]
mov edx, 0x20
sub rsp, 0x20
call fcn.14010a486
mov rcx, qword [rbp + 0x448]
add rsp, 0x20
mov edx, 0x13c
sub rsp, 0x20
call fcn.14010a486
mov rcx, qword [rbp + 0x298]
add rsp, 0x20
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x268], rax
xor eax, eax
mov qword [rbp + 0x270], rax
mov rcx, qword [rbp + 0x268]
mov rax, qword [rbp + 0x270]
mov qword [rbp + 0x260], rax
cmp rax, rcx
jne 0x14010ee00
mov rcx, qword [rbp + 0x268]
mov rdx, qword [rbp + 0x278]
xor eax, eax
test rdx, rdx
cmovg rax, rdx
mov qword [rbp + 0x248], rax
xor eax, eax
mov qword [rbp + 0x250], rcx
mov qword [rbp + 0x258], rax
jmp 0x14010ee2c
mov rax, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x448]
mov rdx, qword [rbp + 0x2b0]
mov dl, byte [rdx + rax + 8]
mov byte [rcx + rax], dl
add rax, 1
mov qword [rbp + 0x270], rax
jmp 0x14010edaf
mov rax, qword [rbp + 0x250]
mov rcx, qword [rbp + 0x258]
mov qword [rbp + 0x238], rcx
mov qword [rbp + 0x240], rax
mov eax, dword [0x1401cf1c8]
or eax, dword [0x1401cf1cc]
mov ecx, 0x19dfba66
xor ecx, 0xe61c05c2
mov edx, 0xe637a71e
xor edx, 0x19c858e1
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
add eax, 0x1127053b
and eax, 0x71051068
cmp eax, 0x2052f590
ja 0x140110fa3
mov rcx, qword [rbp + 0x238]
mov eax, dword [0x1401cf1d0]
mov r8d, dword [0x1401cf1d4]
xor edx, edx
sub edx, r8d
sub eax, edx
imul r9d, eax, 0x9ea1ef02
mov edx, 0x9a40a79d
xor edx, 0x65bf5862
mov eax, r9d
xor eax, edx
and eax, 0x9a1d9bfe
mov r8d, 0xffffffff
xor r8d, 0x9a1d9bfe
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0x3163ccb1
mov r10d, 0x1579449a
xor r10d, 0x8f64df64
and edx, r10d
and r8d, 0x3163ccb1
or eax, r9d
or edx, r8d
xor eax, edx
mov r8d, 0x5191b4b0
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x248]
cmp rcx, rdx
sete cl
mov byte [rbp + 0x237], cl
cmp eax, 0x6a1c01fe
jae 0x14010ee8a
mov al, byte [rbp + 0x237]
test al, 1
jne 0x14010efa9
jmp 0x14010ef37
mov rax, qword [rbp + 0x238]
mov rcx, qword [rbp + 0x240]
mov rdx, qword [rbp + 0x448]
mov r8, qword [rbp + 0x290]
mov r8b, byte [r8 + rax + 8]
mov byte [rdx + rcx], r8b
movabs rdx, 0x2480a8a586376937
movabs r8, 0x2480a8a586376937
xor rdx, r8
sub rdx, rcx
xor ecx, ecx
sub rcx, 1
add rdx, rcx
xor ecx, ecx
sub rcx, rdx
mov rdx, rax
and rdx, 1
shl rdx, 1
xor rax, 1
add rax, rdx
mov qword [rbp + 0x250], rcx
mov qword [rbp + 0x258], rax
jmp 0x14010ee2c
mov rax, qword [rbp + 0x3b8]
mov rcx, qword [rbp + 0x440]
mov r8, qword [rbp + 0x298]
mov rdx, qword [rbp + 0x278]
add rdx, r8
mov qword [rbp + 0x220], rdx
mov qword [rcx], 0
mov qword [rax], 0
xor eax, eax
mov qword [rbp + 0x228], rax
mov rcx, qword [rbp + 0x220]
mov rax, qword [rbp + 0x228]
mov qword [rbp + 0x218], rax
cmp rax, rcx
jge 0x14010f4b2
mov rax, qword [rbp + 0x448]
mov rcx, qword [rbp + 0x218]
mov al, byte [rax + rcx]
mov byte [rbp + 0x20f], al
xor eax, eax
mov qword [rbp + 0x210], rax
mov rcx, qword [rbp + 0x220]
mov rdx, qword [rbp + 0x218]
mov rax, qword [rbp + 0x210]
mov qword [rbp + 0x1f0], rax
add rax, 1
mov qword [rbp + 0x1f8], rax
movabs r8, 0xf0f5bc8660c8161f
add rax, r8
add rax, rdx
movabs rdx, 0xf0f5bc8660c8161f
sub rax, rdx
mov qword [rbp + 0x200], rax
cmp rax, rcx
jge 0x14010f0a5
mov rax, qword [rbp + 0x1f8]
mov rcx, qword [rbp + 0x448]
mov rdx, qword [rbp + 0x200]
mov r8b, byte [rbp + 0x20f]
cmp byte [rcx + rdx], r8b
mov qword [rbp + 0x210], rax
je 0x14010f024
mov rcx, qword [rbp + 0x1f0]
mov al, byte [rbp + 0x20f]
test al, al
sete al
sub rcx, 2
setae cl
and al, cl
test al, 1
jne 0x14010f0cd
jmp 0x14010f210
mov rcx, qword [rbp + 0x1f0]
mov al, 0x26
xor al, 0x37
xor edx, edx
xor dl, 0x12
mov byte [rbp + 0x1ee], dl
cmp rcx, 0xa
mov byte [rbp + 0x1ef], al
jb 0x14010f0ff
mov al, byte [rbp + 0x1ee]
mov byte [rbp + 0x1ef], al
mov rcx, qword [rbp + 0x1f0]
mov rdx, qword [rbp + 0x1f8]
mov al, byte [rbp + 0x1ef]
mov byte [rbp + 0x1df], al
movabs rax, 0x1db7df4e954a210a
movabs r8, 0x1db7df4e954a2180
xor rax, r8
cmp rcx, 0x8a
cmovb rax, rdx
mov qword [rbp + 0x1e0], rax
mov al, 0x4a
xor al, 0xb7
mov dl, 0x85
xor dl, 0x70
mov byte [rbp + 0x1ec], dl
cmp rcx, 0xa
mov byte [rbp + 0x1ed], al
jb 0x14010f16d
mov al, byte [rbp + 0x1ec]
mov byte [rbp + 0x1ed], al
mov rcx, qword [rbp + 0x440]
mov dl, byte [rbp + 0x1df]
mov al, byte [rbp + 0x1ed]
mov byte [rbp + 0x1cf], al
sub rsp, 0x20
call fcn.140025b42
mov dl, byte [rbp + 0x1cf]
mov rcx, qword [rbp + 0x440]
mov rax, qword [rbp + 0x1e0]
add rsp, 0x20
add dl, al
sub rsp, 0x20
call fcn.140025b42
mov rax, qword [rbp + 0x218]
mov rdx, qword [rbp + 0x1e0]
add rsp, 0x20
add rax, 0xffffffffffffffff
movabs rcx, 0x4a02781520c2e742
movabs r8, 0x4a02781520c2e742
xor rcx, r8
sub rcx, rax
movabs rax, 0xb145d969872920c
movabs r8, 0xb145d969872920c
xor rax, r8
sub rax, rdx
add rcx, rax
xor eax, eax
sub rax, rcx
mov qword [rbp + 0x1d0], rax
jmp 0x14010f488
mov eax, dword [0x1401cf1d8]
xor eax, dword [0x1401cf1dc]
imul ecx, eax, 0x6fe63395
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xb6cf4e0d
mov edx, 0xd67cfba3
xor edx, 0x60b3b5ae
mov r8d, 0x4c3a81fc
xor r8d, 0xb3c57e03
xor edx, r8d
and ecx, edx
or eax, ecx
and eax, 0x4a81ce4
cmp eax, 0xbb6707fa
jae 0x140110fac
mov rcx, qword [rbp + 0x440]
mov eax, dword [0x1401cf1e0]
mov r8d, dword [0x1401cf1e4]
xor r8d, 0x64f920e3
xor edx, edx
div r8d
mov edx, 0x19860816
xor edx, 0xeca1888a
imul eax, edx
mov r8d, 0x8baa5069
xor edx, edx
div r8d
mov dl, byte [rbp + 0x20f]
mov r9d, eax
mov rax, qword [rbp + 0x1f0]
mov r8d, r9d
and r8d, 0x4aad574e
xor r9d, 0x4aad574e
or r8d, r9d
mov dword [rbp + 0x1c8], r8d
movabs r8, 0x336ca07ab4e92b50
movabs r9, 0x336ca07ab4e92b52
xor r8, r9
cmp rax, r8
seta al
mov byte [rbp + 0x1c7], al
sub rsp, 0x20
call fcn.140025b42
mov eax, dword [rbp + 0x1c8]
add rsp, 0x20
cmp eax, 0xa916916b
je 0x140110fac
mov rax, qword [rbp + 0x218]
mov cl, byte [rbp + 0x1c7]
test cl, 1
mov qword [rbp + 0x1d0], rax
jne 0x14010f322
jmp 0x14010f488
mov rax, qword [rbp + 0x1f0]
movabs rcx, 0x5595c5444e70cf33
movabs rdx, 0x5595c5444e70cf35
xor rcx, rdx
xor edx, edx
div rcx
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1a8], rcx
mov ecx, 6
xor edx, edx
div rcx
mov qword [rbp + 0x1b0], rdx
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
je 0x14010f3ed
mov rcx, qword [rbp + 0x440]
mov edx, 0x10
sub rsp, 0x20
call fcn.140025b42
mov rcx, qword [rbp + 0x440]
add rsp, 0x20
mov edx, 3
sub rsp, 0x20
call fcn.140025b42
mov rax, qword [rbp + 0x1a0]
add rsp, 0x20
movabs rcx, 0xf0392b214e984c78
movabs rdx, 0xf0392b214e984c79
xor rcx, rdx
add rax, rcx
mov qword [rbp + 0x1b8], rax
jmp 0x14010f370
mov rax, qword [rbp + 0x1b0]
cmp rax, 2
jbe 0x14010f450
mov rcx, qword [rbp + 0x440]
mov edx, 0x10
sub rsp, 0x20
call fcn.140025b42
mov rax, qword [rbp + 0x1b0]
mov rcx, qword [rbp + 0x440]
add rsp, 0x20
mov dl, al
add dl, 0xb0
add dl, 0xfd
sub dl, 0xb0
sub rsp, 0x20
call fcn.140025b42
mov rax, qword [rbp + 0x1f0]
add rsp, 0x20
mov qword [rbp + 0x198], rax
jmp 0x14010f470
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x1b0]
xor rcx, 0xffffffffffffffff
add rax, rcx
add rax, 1
mov qword [rbp + 0x198], rax
mov rcx, qword [rbp + 0x218]
mov rax, qword [rbp + 0x198]
add rax, rcx
mov qword [rbp + 0x1d0], rax
mov rax, qword [rbp + 0x1d0]
mov rcx, 0xffffffffffffffff
xor rcx, 1
xor edx, edx
sub rdx, 1
sub rcx, rdx
sub rax, rcx
mov qword [rbp + 0x228], rax
jmp 0x14010efe6
lea rcx, [rbp + 0x4e0]
mov edx, 0x4c
sub rsp, 0x20
call fcn.14010a486
mov rcx, qword [rbp + 0x440]
mov rax, qword [rbp + 0x3b8]
add rsp, 0x20
mov rcx, qword [rcx]
mov qword [rbp + 0x180], rcx
mov rax, qword [rax]
mov qword [rbp + 0x188], rax
xor eax, eax
mov qword [rbp + 0x190], rax
mov rax, qword [rbp + 0x190]
mov qword [rbp + 0x178], rax
mov eax, dword [0x1401cf1e8]
or eax, dword [0x1401cf1ec]
xor eax, 0x39b6bf23
mov ecx, 0x69a11df
xor ecx, 0xdda1c3c9
or eax, ecx
and eax, 0x66b8c37b
cmp eax, 0xf73a134c
ja 0x140110fb5
mov rcx, qword [rbp + 0x178]
mov eax, dword [0x1401cf1f0]
xor eax, 0xc90269db
xor edx, edx
div dword [0x1401cf1f4]
mov rdx, qword [rbp + 0x180]
mov r8d, 0xfc48a0dd
xor r8d, 0xfc48a0dd
sub r8d, eax
mov eax, 0xee86de73
xor eax, 0xee86de73
mov r9d, 0x4820325a
xor r9d, 0x3c27431e
sub eax, r9d
add r8d, eax
xor eax, eax
sub eax, r8d
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x168cc597
mov r10d, 0xffffffff
xor r10d, 0x168cc597
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x168cc597
or eax, 0x168cc597
imul eax, r9d
add eax, r8d
mov r8d, eax
and r8d, 0xaea46b39
xor r8d, 0xffffffff
add eax, 0xaea46b39
add eax, 1
add eax, r8d
cmp rcx, rdx
setl cl
mov byte [rbp + 0x177], cl
cmp eax, 0x4a1f0a11
jb 0x14010f532
mov al, byte [rbp + 0x177]
test al, 1
jne 0x14010f603
jmp 0x14010f7b7
mov eax, dword [0x1401cf1f8]
mov ecx, dword [0x1401cf1fc]
sub eax, 0xbdaffe59
add eax, ecx
add eax, 0xbdaffe59
mov ecx, 0x55f7dbc2
xor ecx, 0xab84adce
and ecx, eax
xor ecx, 0xffffffff
add eax, 0xfe73760c
mov edx, 0x72331bde
xor edx, 0x72331bdf
add eax, edx
add eax, ecx
xor eax, 0x804490f9
xor eax, 0xad2df870
cmp eax, 0xe6499390
ja 0x140110fbe
mov rdx, qword [rbp + 0x178]
mov rcx, qword [rbp + 0x188]
mov eax, dword [0x1401cf200]
or eax, dword [0x1401cf204]
mov r8d, eax
xor r8d, 0xffffffff
mov r9d, 0xa8c7bcec
xor r9d, 0x74b11859
and r9d, r8d
mov r10d, 0xffffffff
xor r10d, 0xdc76a4b5
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0xdc76a4b5
or eax, 0xdc76a4b5
imul eax, r9d
add eax, r8d
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x8481c57b
mov r10d, 0x1cbe2d47
xor r10d, 0x983fe83c
mov r8d, 0x76ae74d6
xor r8d, 0x89518b29
xor r10d, r8d
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x8481c57b
mov r10d, 0x42f8a10e
xor r10d, 0xc6796475
or eax, r10d
imul eax, r9d
add eax, r8d
and eax, 0x25f23249
mov cl, byte [rcx + rdx + 8]
movzx r8d, cl
mov r9d, dword [rbp + r8*4 + 0x4e0]
mov r10d, 0x9ee97b0a
xor r10d, 0x9ee97b0b
add r9d, r10d
mov dword [rbp + r8*4 + 0x4e0], r9d
cmp cl, 0xf
seta cl
and cl, 1
movzx ecx, cl
mov r8d, ecx
mov rcx, 0xffffffffffffffff
xor rcx, 1
movabs r9, 0x25f5da408f6ce95c
movabs r10, 0x25f5da408f6ce95c
xor r9, r10
movabs r10, 0xcd35ea4165822ce8
movabs r11, 0xcd35ea4165822ce9
xor r10, r11
sub r9, r10
sub rcx, r9
sub rdx, rcx
mov rcx, rdx
and rcx, r8
or rdx, r8
add rcx, rdx
mov qword [rbp + 0x168], rcx
cmp eax, 0x22c8b469
je 0x14010f654
mov rax, qword [rbp + 0x168]
mov qword [rbp + 0x190], rax
jmp 0x14010f4f6
lea rcx, [rbp + 0x4e0]
mov r8d, 0x13
mov r9d, 7
lea rax, [rbp + 0x530]
sub rsp, 0x30
mov rdx, r8
mov qword [rsp + 0x20], rax
call fcn.14010c770
mov rax, qword [rbp + 0x490]
add rsp, 0x30
mov al, byte [rax]
mov cl, 0xbe
xor cl, 0xbe
cmp al, cl
jne 0x14010fdd5
mov rax, qword [rbp + 0x3c0]
mov rcx, qword [rbp + 0x530]
mov qword [rbp + 0x140], rcx
mov rax, qword [rax]
mov qword [rbp + 0x148], rax
lea rcx, [rbp + 0x530]
sub rsp, 0x20
call fcn.140025b0f
mov rax, qword [rbp + 0x3d0]
mov rcx, qword [rbp + 0x3c8]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x150], rdx
mov rax, qword [rax]
mov qword [rbp + 0x158], rax
sub rsp, 0x20
call fcn.140025b1f
mov rcx, qword [rbp + 0x450]
add rsp, 0x20
mov edx, 0x26
sub rsp, 0x20
call fcn.14010a486
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0x160], rax
mov rcx, qword [rbp + 0x160]
mov qword [rbp + 0x130], rcx
movabs rdx, 0x98f4421e9ffbd834
movabs rax, 0x98f4421e9ffbd827
xor rdx, rax
mov eax, 0x13
cmp rcx, rdx
mov qword [rbp + 0x138], rax
je 0x14010f8f5
mov rax, qword [rbp + 0x130]
mov rcx, qword [rbp + 0x450]
mov rdx, qword [rbp + 0x158]
mov r8, qword [0x1401dda90]
movzx r8d, byte [r8 + rax]
movzx edx, byte [rdx + r8 + 8]
mov word [rcx + rax*2], dx
add rax, 1
mov qword [rbp + 0x160], rax
jmp 0x14010f880
mov rax, qword [rbp + 0x138]
mov rcx, qword [rbp + 0x450]
mov qword [rbp + 0x128], rax
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 0xffffffffffffffff
add rdx, rax
xor eax, eax
sub rax, rdx
cmp word [rcx + rax*2], 0
mov qword [rbp + 0x138], rax
je 0x14010f8f5
mov rdx, qword [rbp + 0x420]
mov al, byte [rbp + 0x2d7]
and al, 1
movzx r8d, al
lea rcx, [rbp + 0xad8]
mov r9d, 1
sub rsp, 0x20
call fcn.140105680
mov rax, qword [rbp + 0x490]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14010fdd5
mov rdx, qword [rbp + 0x420]
mov r8d, 0xb984a9d8
xor r8d, 0xb984a9da
movabs r9, 0x8f7073f7b2b44b62
movabs rax, 0x8f7073f7b2b44b60
xor r9, rax
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105680
mov rax, qword [rbp + 0x490]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x64
xor cl, 0x64
cmp al, cl
jne 0x14010fdd5
mov rdx, qword [rbp + 0x420]
mov rax, qword [rbp + 0x298]
mov ecx, eax
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xfffffeff
add eax, ecx
xor r8d, r8d
sub r8d, eax
lea rcx, [rbp + 0xad8]
mov r9d, 5
sub rsp, 0x20
call fcn.140105680
mov rax, qword [rbp + 0x490]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x3c
xor cl, 0x3c
cmp al, cl
jne 0x14010fdd5
mov rdx, qword [rbp + 0x420]
mov rax, qword [rbp + 0x278]
mov r8d, eax
mov eax, 0x853b4db4
xor eax, 0x7ac4b24b
add r8d, eax
lea rcx, [rbp + 0xad8]
mov r9d, 5
sub rsp, 0x20
call fcn.140105680
mov rax, qword [rbp + 0x490]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14010fdd5
mov rdx, qword [rbp + 0x420]
mov rax, qword [rbp + 0x128]
mov r8d, eax
mov eax, 0x4652482d
xor eax, 0xb9adb7d1
add r8d, eax
lea rcx, [rbp + 0xad8]
mov r9d, 4
sub rsp, 0x20
call fcn.140105680
mov rax, qword [rbp + 0x490]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x9f
xor cl, 0x9f
cmp al, cl
jne 0x14010fdd5
mov rcx, qword [rbp + 0x128]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x118], rax
xor eax, eax
mov qword [rbp + 0x120], rax
mov rdx, qword [rbp + 0x118]
mov rcx, qword [rbp + 0x120]
mov qword [rbp + 0x108], rcx
xor eax, eax
cmp rcx, rdx
mov qword [rbp + 0x110], rax
je 0x14010fb77
mov rcx, qword [rbp + 0x108]
mov rdx, qword [rbp + 0x420]
mov rax, qword [rbp + 0x450]
movzx r8d, word [rax + rcx*2]
lea rcx, [rbp + 0xad8]
mov r9d, 3
sub rsp, 0x20
call fcn.140105680
mov rcx, qword [rbp + 0x490]
mov rax, qword [rbp + 0x108]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0x8b
xor dl, 0x8b
movabs r9, 0x7ad28c21994c21c3
movabs r8, 0x7ad28c21994c21c2
xor r9, r8
mov r8, rax
and r8, r9
shl r8, 1
xor rax, 1
add rax, r8
cmp cl, dl
mov qword [rbp + 0x120], rax
je 0x14010facb
jmp 0x14010fdd5
mov rcx, qword [rbp + 0x440]
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0x100], rax
cmp rax, qword [rcx]
jge 0x14010fe4a
mov rdx, qword [rbp + 0x420]
mov rax, qword [rbp + 0x158]
mov r8, qword [rbp + 0x148]
mov r9, qword [rbp + 0x100]
mov rcx, qword [rbp + 0x3b8]
mov rcx, qword [rcx]
mov cl, byte [rcx + r9 + 8]
mov byte [rbp + 0xff], cl
movzx ecx, cl
movzx r8d, word [r8 + rcx*2 + 8]
movzx eax, byte [rax + rcx + 8]
mov r9d, eax
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105680
mov rax, qword [rbp + 0x490]
add rsp, 0x20
cmp byte [rax], 0
jne 0x14010fdd5
mov al, byte [rbp + 0xff]
mov rcx, qword [rbp + 0x100]
inc rcx
mov qword [rbp + 0xf0], rcx
sub al, 0x10
je 0x14010fc54
jmp 0x14010fc1f
mov al, byte [rbp + 0xff]
sub al, 0x11
je 0x14010fcc3
jmp 0x14010fc32
mov rax, qword [rbp + 0xf0]
mov cl, byte [rbp + 0xff]
sub cl, 0x12
mov qword [rbp + 0xe8], rax
je 0x14010fd66
jmp 0x14010fdc2
mov rdx, qword [rbp + 0x420]
mov rcx, qword [rbp + 0xf0]
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax]
movzx r8d, byte [rax + rcx + 8]
lea rcx, [rbp + 0xad8]
mov r9d, 2
sub rsp, 0x20
call fcn.140105680
mov rcx, qword [rbp + 0x490]
mov rax, qword [rbp + 0x100]
add rsp, 0x20
mov cl, byte [rcx]
mov rdx, rax
and rdx, 2
shl rdx, 1
xor rax, 2
add rax, rdx
cmp cl, 0
mov qword [rbp + 0xe8], rax
je 0x14010fdc2
jmp 0x14010fdd5
mov rdx, qword [rbp + 0x420]
mov rcx, qword [rbp + 0xf0]
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax]
movzx r8d, byte [rax + rcx + 8]
lea rcx, [rbp + 0xad8]
mov r9d, 3
sub rsp, 0x20
call fcn.140105680
mov rcx, qword [rbp + 0x490]
mov rax, qword [rbp + 0x100]
add rsp, 0x20
mov cl, byte [rcx]
mov dl, 0xd7
xor dl, 0xd7
mov r8, 0xffffffffffffffff
xor r8, 2
movabs r9, 0x6b8745a478347779
movabs r10, 0x6b8745a478347779
xor r9, r10
movabs r10, 0xd7eaf4d8d1b4c633
movabs r11, 0xd7eaf4d8d1b4c632
xor r10, r11
sub r9, r10
sub r8, r9
sub rax, r8
cmp cl, dl
mov qword [rbp + 0xe8], rax
je 0x14010fdc2
jmp 0x14010fdd5
mov rdx, qword [rbp + 0x420]
mov rcx, qword [rbp + 0xf0]
mov rax, qword [rbp + 0x3b8]
mov rax, qword [rax]
movzx r8d, byte [rax + rcx + 8]
lea rcx, [rbp + 0xad8]
mov r9d, 7
sub rsp, 0x20
call fcn.140105680
mov rcx, qword [rbp + 0x490]
mov rax, qword [rbp + 0x100]
add rsp, 0x20
mov cl, byte [rcx]
add rax, 2
cmp cl, 0
mov qword [rbp + 0xe8], rax
jne 0x14010fdd5
mov rax, qword [rbp + 0xe8]
mov qword [rbp + 0x110], rax
jmp 0x14010fb77
mov rax, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x298]
mov rdx, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2a8]
mov r9, qword [rbp + 0x280]
mov r10, qword [rbp + 0x278]
mov r11, qword [rbp + 0x290]
mov rsi, qword [rbp + 0x288]
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jmp 0x140110da5
mov rax, qword [rbp + 0x3d8]
mov rcx, qword [rbp + 0x158]
mov rdx, qword [rbp + 0x150]
mov qword [rbp + 0x4d0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x4d0]
sub rsp, 0x20
call fcn.140024c06
mov rdx, qword [rbp + 0x140]
mov rcx, qword [rbp + 0x148]
mov rax, qword [rbp + 0x3e0]
add rsp, 0x20
mov qword [rbp + 0x4c0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x4c0]
sub rsp, 0x20
call fcn.140024b00
add rsp, 0x20
lea rcx, [rbp + 0x530]
sub rsp, 0x20
call fcn.14010a250
mov rax, qword [rbp + 0x440]
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax + 8]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140024c06
add rsp, 0x20
mov rcx, qword [rbp + 0x2d8]
xor eax, eax
mov qword [rbp + 0xd8], rcx
mov qword [rbp + 0xe0], rax
jmp 0x14010ff09
mov rcx, qword [rbp + 0x428]
mov rdx, qword [rbp + 0xd8]
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rdx
mov rcx, qword [rcx]
mov qword [rbp + 0xd0], rcx
cmp rax, rcx
jge 0x140110850
mov rcx, qword [rbp + 0xc0]
mov rax, qword [rbp + 0x498]
mov rax, qword [rax]
mov qword [rbp + 0xb0], rax
mov ax, word [rax + rcx*2 + 8]
mov word [rbp + 0xbe], ax
mov cx, 0x2533
xor cx, 0xdacc
cmp ax, cx
jg 0x14011046d
mov eax, dword [0x1401cf208]
mov ecx, dword [0x1401cf20c]
xor ecx, 0x557230b0
sub eax, ecx
mov ecx, 0x215cf63
xor ecx, 0x71a9df56
add eax, ecx
mov ecx, 0x9aaed299
xor edx, edx
div ecx
mov ecx, 0x80258c80
xor edx, edx
div ecx
cmp eax, 0xe55e677f
ja 0x140110fc7
mov r10, qword [rbp + 0x290]
mov rdi, qword [rbp + 0x2a0]
mov r15, qword [rbp + 0xc8]
mov r13, qword [rbp + 0xc0]
mov r9w, word [rbp + 0xbe]
mov eax, dword [0x1401cf210]
xor edx, edx
div dword [0x1401cf214]
mov rdx, qword [rbp + 0x420]
mov r8d, eax
mov rax, qword [rbp + 0xb0]
and r8d, 0x7ae73e47
mov ecx, r8d
and ecx, 0x60f7fad0
or r8d, 0x60f7fad0
add ecx, r8d
xor ecx, 0x93565ccf
mov dword [rbp + 0xa8], ecx
movabs r8, 0x7809f746ee7c9f80
movabs rcx, 0x7809f746ee7c9f81
xor r8, rcx
mov rcx, r13
add rcx, r8
mov r8w, word [rax + rcx*2 + 8]
movabs r11, 0x6cf5f3fc568e553d
movabs rcx, 0x6cf5f3fc568e553f
xor r11, rcx
mov rcx, r13
add rcx, r11
mov r12w, word [rax + rcx*2 + 8]
mov cx, 0xee3b
xor cx, 0xee33
mov ax, r9w
shr ax, cl
mov rcx, qword [rbp + 0x2b0]
mov r14w, ax
xor r14w, 0xffff
mov r11w, 0xffff
xor r11w, 0x7f
or r14w, r11w
xor ax, 0xffff
mov r11w, 0xdcc8
xor r11w, 0xdcb7
mov si, 0x21c2
xor si, 0xde3d
xor r11w, si
or ax, r11w
xor r14w, 0xffff
xor ax, 0xffff
or r14w, ax
mov ax, r9w
and ax, 0xff
xor ax, 0xffff
and r9w, 0xff
xor r9w, 0xffff
xor ax, 0xffff
xor r9w, 0xffff
or ax, r9w
movzx r9d, r14w
mov r11d, r9d
mov r9, qword [0x1401dda38]
movzx r9d, byte [r9 + r11]
mov ebx, r9d
mov r9, qword [0x1401dda40]
mov r11w, word [r9 + r11*2]
mov r9w, r12w
xor r9w, 0xffff
and r9w, r11w
xor r11w, 0xffff
mov si, r12w
and si, r11w
sub si, r9w
movzx eax, ax
mov r11d, eax
mov rax, qword [0x1401dda20]
movzx eax, byte [rax + r11]
mov r9d, eax
mov rax, qword [0x1401dda28]
sub r8w, word [rax + r11*2]
movabs rax, 0xc4e9058f6eb23e1e
sub r13, rax
add r13, 3
movabs rax, 0xc4e9058f6eb23e1e
add r13, rax
mov rax, qword [rbp + 0x280]
mov qword [rbp + 0x68], r13
movzx r12d, r12w
add r15, r12
mov qword [rbp + 0x70], r15
mov r15w, 0xf8bd
xor r15w, 0xf9bc
add r14w, r15w
movzx r14d, r14w
movzx edi, word [rdi + r14*2 + 8]
movzx ecx, byte [rcx + r14 + 8]
mov qword [rbp + 0x78], rcx
movzx esi, si
shl rsi, cl
mov rcx, qword [rbp + 0x78]
or rsi, rdi
xor edi, edi
sub rdi, rcx
xor ecx, ecx
sub rcx, rbx
add rdi, rcx
movabs rcx, 0xbdf20783942d02e0
movabs rbx, 0xbdf20783942d02e0
xor rcx, rbx
sub rcx, rdi
mov qword [rbp + 0x80], rcx
movzx eax, word [rax + r11*2 + 8]
mov edi, eax
shl rdi, cl
mov rcx, qword [rbp + 0x80]
mov rax, rsi
and rax, rdi
xor rsi, rdi
or rax, rsi
movzx r10d, byte [r10 + r11 + 8]
add rcx, r10
mov qword [rbp + 0x88], rcx
movzx r8d, r8w
shl r8, cl
mov rcx, qword [rbp + 0x88]
or rax, r8
mov qword [rbp + 0x90], rax
movabs r8, 0xbfa93cad40f00f65
movabs r10, 0xbfa93cad40f00f65
xor r8, r10
sub r8, rcx
movabs rcx, 0xcde97fefb3c50e7d
movabs r10, 0xcde97fefb3c50e7d
xor rcx, r10
sub rcx, r9
add r8, rcx
movabs rcx, 0xcd6a4bc6084d7b32
movabs r9, 0xcd6a4bc6084d7b32
xor rcx, r9
sub rcx, r8
mov qword [rbp + 0x98], rcx
mov r8, rcx
sub r8, 0x20
mov r9d, 0x20
cmovl r9, rcx
mov qword [rbp + 0xa0], r9
mov r8d, eax
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105680
mov rcx, qword [rbp + 0x490]
mov eax, dword [rbp + 0xa8]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xaf], cl
cmp eax, 0x1abb2182
je 0x140110fc7
mov rax, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x298]
mov rdx, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2a8]
mov r9, qword [rbp + 0x280]
mov r10, qword [rbp + 0x278]
mov r11, qword [rbp + 0x290]
mov rsi, qword [rbp + 0x288]
mov bl, byte [rbp + 0xaf]
test bl, 1
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110349
jmp 0x140110da5
mov rax, qword [rbp + 0x68]
mov rcx, qword [rbp + 0x70]
mov r8, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x98]
sub rdx, r8
mov qword [rbp + 0x50], rdx
movabs r8, 0xfe9b877ed11c751d
movabs r9, 0xfe9b877ed11c751d
xor r8, r9
cmp rdx, r8
mov qword [rbp + 0x58], rcx
mov qword [rbp + 0x60], rax
jle 0x140110452
mov rsi, qword [rbp + 0x288]
mov rdi, qword [rbp + 0x68]
mov rbx, qword [rbp + 0x70]
mov r14, qword [rbp + 0x490]
mov r9, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x420]
mov rax, qword [rbp + 0x90]
mov rcx, qword [rbp + 0xa0]
shr rax, cl
mov r8d, eax
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105680
mov r11, qword [rbp + 0x290]
mov r10, qword [rbp + 0x278]
mov r9, qword [rbp + 0x280]
mov r8, qword [rbp + 0x2a8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a0]
add rsp, 0x20
cmp byte [r14], 0
mov qword [rbp + 0x58], rbx
mov qword [rbp + 0x60], rdi
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110da5
mov rcx, qword [rbp + 0x58]
mov rax, qword [rbp + 0x60]
mov qword [rbp + 0xd8], rcx
mov qword [rbp + 0xe0], rax
jmp 0x14010ff09
mov rdx, qword [rbp + 0xc8]
mov rax, qword [rbp + 0xc0]
mov cx, word [rbp + 0xbe]
movzx ecx, cx
mov qword [rbp + 0x20], rcx
add rax, 1
mov qword [rbp + 0x28], rax
xor ecx, ecx
xor eax, eax
mov qword [rbp + 0x30], rdx
mov dword [rbp + 0x3c], ecx
mov rcx, rax
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rax
mov rcx, qword [rbp + 0x20]
mov rdx, qword [rbp + 0x30]
mov r8d, dword [rbp + 0x3c]
mov r9, qword [rbp + 0x40]
mov rax, qword [rbp + 0x48]
mov qword [rbp], rax
mov qword [rbp + 8], r9
mov dword [rbp + 0x14], r8d
mov qword [rbp + 0x18], rdx
cmp rax, rcx
je 0x140110779
mov rax, qword [rbp + 8]
mov ecx, dword [rbp + 0x14]
mov r8, qword [rbp + 0x2b0]
mov rdx, qword [rbp + 0x418]
mov r9, qword [rbp + 0x18]
mov r10, rdx
add r10, r9
mov qword [rbp - 0x28], r10
movzx edx, byte [rdx + r9]
movzx r8d, byte [r8 + rdx + 8]
mov r9d, r8d
mov qword [rbp - 0x20], r9
mov r8, rax
add r8, r9
cmp r8, 0x20
mov qword [rbp - 0x18], rdx
mov dword [rbp - 0xc], ecx
mov qword [rbp - 8], rax
jle 0x14011068b
mov rsi, qword [rbp + 0x288]
mov rdi, qword [rbp + 0x490]
mov r9, qword [rbp + 8]
mov r8d, dword [rbp + 0x14]
mov rdx, qword [rbp + 0x420]
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105680
mov r11, qword [rbp + 0x290]
mov r10, qword [rbp + 0x278]
mov r9, qword [rbp + 0x280]
mov r8, qword [rbp + 0x2a8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a0]
add rsp, 0x20
cmp byte [rdi], 0
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jne 0x140110da5
mov ecx, dword [0x1401cf218]
xor ecx, 0x904f6b83
mov edx, dword [0x1401cf21c]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0x33fcce9d
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x28d241b6
add eax, ecx
imul eax, eax, 0x7b438561
cmp eax, 0xa055e8e8
jb 0x140110fd0
mov rdx, qword [rbp - 0x28]
mov eax, dword [0x1401cf220]
xor eax, 0x37390bf5
and eax, dword [0x1401cf224]
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
mov r8d, 0xad274c77
xor r8d, 0xce4ad7b2
or eax, r8d
add eax, ecx
mov ecx, 0x15b90e77
xor ecx, 0xbc8bf921
add eax, ecx
mov ecx, 0x3b0ebd25
xor ecx, 0xf913e69a
or eax, ecx
mov ecx, 0x9ce96a96
xor ecx, 0x31835351
movzx edx, byte [rdx]
mov qword [rbp - 0x30], rdx
cmp eax, ecx
je 0x140110610
mov rdx, qword [rbp - 0x30]
xor ecx, ecx
xor eax, eax
mov qword [rbp - 0x18], rdx
mov dword [rbp - 0xc], ecx
mov qword [rbp - 8], rax
jmp 0x14011068b
mov rax, qword [rbp]
mov r8, qword [rbp + 0x18]
mov r10, qword [rbp - 0x20]
mov r9, qword [rbp + 0x2a0]
mov r11, qword [rbp - 0x18]
mov edx, dword [rbp - 0xc]
mov rcx, qword [rbp - 8]
mov qword [rbp - 0x38], rcx
movzx r9d, word [r9 + r11*2 + 8]
shl r9, cl
mov rcx, qword [rbp - 0x38]
mov esi, r9d
mov r9d, 0x8b6c9383
xor r9d, 0x74936c7c
mov r11d, esi
xor r11d, r9d
mov r9d, edx
and r9d, r11d
mov r11d, edx
xor r11d, esi
add edx, r11d
sub edx, r9d
mov r9, rcx
and r9, r10
shl r9, 1
xor rcx, r10
add rcx, r9
movabs r9, 0xd2b5a92e44db1e3
add r8, r9
movabs r9, 0x168d7697ddcdb216
movabs r10, 0x168d7697ddcdb217
xor r9, r10
add r8, r9
movabs r9, 0xd2b5a92e44db1e3
sub r8, r9
movabs r10, 0x874d4884402b7f0d
movabs r9, 0x874d4884402b7f0c
xor r10, r9
mov r9, rax
and r9, r10
movabs r10, 0x83b34a395a7a044e
movabs r11, 0x83b34a395a7a044c
xor r10, r11
imul r9, r10
xor rax, 1
add rax, r9
mov qword [rbp + 0x30], r8
mov dword [rbp + 0x3c], edx
mov qword [rbp + 0x40], rcx
mov qword [rbp + 0x48], rax
jmp 0x1401104a7
mov rax, qword [rbp + 0x28]
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp + 8]
cmp rdx, 0
mov qword [rbp + 0x58], rcx
mov qword [rbp + 0x60], rax
jle 0x140110452
mov rsi, qword [rbp + 0x288]
mov rdi, qword [rbp + 0x28]
mov rbx, qword [rbp + 0x18]
mov r14, qword [rbp + 0x490]
mov r9, qword [rbp + 8]
mov r8d, dword [rbp + 0x14]
mov rdx, qword [rbp + 0x420]
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105680
mov r11, qword [rbp + 0x290]
mov r10, qword [rbp + 0x278]
mov r9, qword [rbp + 0x280]
mov r8, qword [rbp + 0x2a8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a0]
add rsp, 0x20
cmp byte [r14], 0
mov qword [rbp + 0x58], rbx
mov qword [rbp + 0x60], rdi
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
je 0x140110452
jmp 0x140110da5
mov rax, qword [rbp + 0xc0]
mov rcx, qword [rbp + 0xd0]
cmp rax, rcx
je 0x140110b14
mov eax, dword [0x1401cf228]
mov edx, dword [0x1401cf22c]
xor edx, 0xdbabc2d2
mov r8d, 0x8f783cc
xor r8d, 0x8f783cd
mov ecx, eax
add ecx, r8d
mov r8d, 0xbefe20f4
xor r8d, 0x4101df0b
xor eax, r8d
or eax, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x46243ac4
mov r8d, 0xffffffff
xor r8d, 0x46243ac4
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x46243ac4
mov r8d, 0x7a65e887
xor r8d, 0x3c41d243
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xa78c7f
xor ecx, 0xb65eed0b
sub eax, ecx
mov ecx, 0x16e207e4
xor ecx, 0x3cc9c630
xor eax, ecx
cmp eax, 0x8ce40e0a
ja 0x140110fd9
mov ecx, dword [0x1401cf230]
mov r8d, dword [0x1401cf234]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov r9d, 0xf0113c5e
xor r9d, 0xfeec3a1
mov edx, r8d
xor edx, r9d
or eax, edx
mov r9d, 0xf3bf581c
xor r9d, 0xc40a7e3
mov edx, r8d
xor edx, r9d
mov r9d, 0x567f571f
xor r9d, 0xa980a8e0
xor r8d, r9d
or edx, r8d
xor ecx, 0xffffffff
mov r8d, 0x5955d02f
xor r8d, 0xa6aa2fd0
xor edx, r8d
or ecx, edx
mov edx, 0x722f99cc
xor edx, 0x8dd06633
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
and eax, 0x8847b5b4
imul r11d, eax, 0xc536db3
mov eax, 0x7a94b3b
xor eax, 0xf856b4c4
mov ecx, r11d
xor ecx, eax
mov edx, 0xffffffff
xor edx, 0x8c3c6a85
mov r8d, 0xffffffff
xor r8d, 0x14db0464
mov r9d, 0xd21fa4e9
xor r9d, 0xc6c4a08d
mov eax, ecx
and eax, r9d
and r11d, r8d
mov r9d, edx
and r9d, 0x14db0464
mov r10d, r8d
and r10d, 0x8c3c6a85
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xbe93231c
xor edx, 0xaa482778
or edx, r8d
and ecx, edx
or eax, ecx
mov dword [rbp - 0x3c], eax
mov eax, 0x4dd55d85
xor eax, 0x3a3e3449
mov dword [rbp - 0x40], eax
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.14001217d
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1401dd720]
mov qword [rcx], rax
lea rax, [0x1401dc87c]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401dc8e0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401dc8e8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0x372a9d2aa77fe5a5
movabs rdx, 0xc8d562d522dd8aa3
xor rax, rdx
lea rdx, [0x1401dc87c]
lea r8, [0x1401dc887]
lea r9, [0x1401dc88f]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.1400120ce
mov ecx, dword [rbp - 0x40]
mov eax, dword [rbp - 0x3c]
add rsp, 0x30
cmp eax, ecx
jb 0x140110fd9
mov rax, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x298]
mov rdx, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2a8]
mov r9, qword [rbp + 0x280]
mov r10, qword [rbp + 0x278]
mov r11, qword [rbp + 0x290]
mov rsi, qword [rbp + 0x288]
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jmp 0x140110da5
mov rax, qword [rbp + 0x2b0]
mov al, byte [rax + 0x108]
mov byte [rbp - 0x41], al
mov cl, 0x46
xor cl, 0x46
cmp al, cl
jne 0x140110d02
mov ecx, dword [0x1401cf238]
mov eax, dword [0x1401cf23c]
mov edx, 0x219e3879
xor edx, 0xec99d330
add ecx, edx
add ecx, eax
sub ecx, 0xcd07eb49
and ecx, 0x82264617
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x84d8e925
xor ecx, 0xc980e4c5
mov edx, 0x11adb3af
xor edx, 0x5cf5be4f
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
imul eax, eax, 0xc09a3278
cmp eax, 0xa14ef2c7
je 0x140110fe2
mov eax, dword [0x1401cf240]
mov ecx, 0x26c35ac
xor ecx, 0x2cec7ed4
xor eax, ecx
mov ecx, dword [0x1401cf244]
xor ecx, 0xca4620f
add eax, ecx
mov ecx, 0xae5bbdf1
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xc1ef01a6
add eax, ecx
mov ecx, 0x14aee7ae
xor ecx, 0x14aee7af
add eax, ecx
mov ecx, 0xb88c402b
xor ecx, 0x49cf3d0c
or eax, ecx
mov dword [rbp - 0x48], eax
mov eax, 0xabae314a
xor eax, 0xe83f3674
mov dword [rbp - 0x4c], eax
mov ecx, 0x40
mov edx, 8
sub rsp, 0x20
call fcn.14001217d
add rsp, 0x20
mov rcx, rax
mov rax, qword [0x1401dd720]
mov qword [rcx], rax
lea rax, [0x1401dc87c]
mov qword [rcx + 0x10], rax
mov rax, qword [0x1401dc8e0]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1401dc8e8]
mov qword [rcx + 0x20], rax
mov qword [rcx + 8], 0
movabs rax, 0xb009feb1d48952eb
movabs rdx, 0x4ff6014e19e924f2
xor rax, rdx
lea rdx, [0x1401dc87c]
lea r8, [0x1401dc887]
lea r9, [0x1401dc88f]
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.1400120ce
mov ecx, dword [rbp - 0x4c]
mov eax, dword [rbp - 0x48]
add rsp, 0x30
cmp eax, ecx
jbe 0x140110b93
mov rax, qword [rbp + 0x2a0]
mov rcx, qword [rbp + 0x298]
mov rdx, qword [rbp + 0x2b0]
mov r8, qword [rbp + 0x2a8]
mov r9, qword [rbp + 0x280]
mov r10, qword [rbp + 0x278]
mov r11, qword [rbp + 0x290]
mov rsi, qword [rbp + 0x288]
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
jmp 0x140110da5
mov rcx, qword [rbp + 0x2a0]
mov rsi, qword [rbp + 0x288]
mov rdx, qword [rbp + 0x420]
mov al, byte [rbp - 0x41]
movzx r8d, word [rcx + 0x208]
movzx eax, al
mov r9d, eax
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105680
mov r11, qword [rbp + 0x290]
mov r10, qword [rbp + 0x278]
mov r9, qword [rbp + 0x280]
mov r8, qword [rbp + 0x2a8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x298]
mov rax, qword [rbp + 0x2a0]
add rsp, 0x20
mov qword [rbp + 0x2f0], rsi
mov qword [rbp + 0x2f8], r11
mov qword [rbp + 0x300], r10
mov qword [rbp + 0x308], r9
mov qword [rbp + 0x310], r8
mov qword [rbp + 0x318], rdx
mov qword [rbp + 0x320], rcx
mov qword [rbp + 0x328], rax
mov rcx, qword [rbp + 0x460]
mov rax, qword [rbp + 0x3e8]
mov r8, qword [rbp + 0x2f0]
mov rdx, qword [rbp + 0x2f8]
mov r9, qword [rbp + 0x300]
mov r10, qword [rbp + 0x308]
mov r11, qword [rbp + 0x310]
mov rsi, qword [rbp + 0x318]
mov rdi, qword [rbp + 0x320]
mov rbx, qword [rbp + 0x328]
mov qword [rbp - 0x58], rbx
mov qword [rbp - 0x60], rdi
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x70], r11
mov qword [rbp - 0x78], r10
mov qword [rbp - 0x80], r9
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.140024c06
mov r8, qword [rbp - 0x80]
mov rdx, qword [rbp - 0x78]
mov rax, qword [rbp + 0x3f0]
mov rcx, qword [rbp + 0x470]
add rsp, 0x20
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.140024b00
add rsp, 0x20
lea rcx, [rbp + 0xa98]
sub rsp, 0x20
call fcn.14010a250
mov rdx, qword [rbp - 0x70]
mov rcx, qword [rbp - 0x68]
mov rax, qword [rbp + 0x3f8]
add rsp, 0x20
mov qword [rbp + 0x4b0], rdx
mov qword [rax], rcx
lea rcx, [rbp + 0x4b0]
sub rsp, 0x20
call fcn.140024c06
mov r8, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x58]
mov rax, qword [rbp + 0x400]
mov rcx, qword [rbp + 0x478]
add rsp, 0x20
mov qword [rcx], r8
mov qword [rax], rdx
sub rsp, 0x20
call fcn.140024b00
add rsp, 0x20
lea rcx, [rbp + 0xab8]
sub rsp, 0x20
call fcn.14010a250
mov rax, qword [rbp + 0x490]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xe
xor cl, 0xe
cmp al, cl
jne 0x140110f1e
mov rax, qword [rbp + 0x330]
movabs rcx, 0x45167d3f2169676a
movabs rdx, 0x9511860b5bae9f62
xor rcx, rdx
sub rax, rcx
add rax, 1
movabs rcx, 0x8f8893bedf9f186d
movabs rdx, 0x5f8f688aa558e065
xor rcx, rdx
add rax, rcx
mov qword [rbp + 0x408], rax
jmp 0x14010e525
jmp 0x140110f62
lea rcx, [rbp + 0xad8]
sub rsp, 0x20
call fcn.140105980
mov rax, qword [rbp + 0x490]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140110f62
mov rcx, qword [rbp + 0x420]
mov rdx, qword [rbp + 0xad8]
sub rsp, 0x20
call fcn.140014110
add rsp, 0x20
mov rax, qword [rbp + 0x480]
mov rcx, qword [rax]
mov qword [rbp + 0x4a0], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x4a8], rax
lea rcx, [rbp + 0x4a0]
sub rsp, 0x20
call fcn.140024b00
nop
lea rsp, [rbp + 0xae8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
pop rcx
cmpsb byte [rsi], byte [rdi]
notrack jmp 0x14010ee8a
invalid
or edi, edi
movsd dword [rdi], dword [rsi]
in eax, 0xe9
je 0x140110fa1
invalid
sbb eax, ebx
cmc
mov ah, 0xe9
invalid
invalid
invalid
mov edx, 0xe9161156
invalid
movabs eax, dword [0xfffffba8e9cf505b]
nop dword [rax + rax]