Function at 0x1400fafd0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0x3e0
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x350], xmm8
movaps xmmword [rbp + 0x340], xmm7
movaps xmmword [rbp + 0x330], xmm6
mov byte [rbp + 0x327], dl
mov qword [rbp + 0x328], rcx
mov eax, dword [0x1402ae4f0]
xor eax, dword [0x1402ae4f4]
and eax, 0x914a726b
mov ecx, 0xb2df6c8
xor edx, edx
div ecx
mov ecx, 0x6bc05e1c
xor ecx, 0x2ea82b61
xor edx, edx
div ecx
cmp eax, 0x447d37ea
je 0x1400fe332
mov eax, dword [0x1402ae4f8]
mov ecx, dword [0x1402ae4fc]
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
not eax
and eax, 0x34ce4e3f
mov edx, ecx
and edx, 0xcb31b1c0
imul edx, eax
mov eax, ecx
and eax, 0x34ce4e3f
or ecx, 0x34ce4e3f
imul ecx, eax
mov eax, ecx
mov ecx, edx
lea eax, [rax + rcx + 0x6e10abcb]
mov dword [rbp + 0x314], eax
mov eax, 0x10
mov qword [rbp + 0x2e0], rax
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x2e0]
mov rcx, rsp
mov qword [rbp + 0x2f8], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x2a8], rax
mov eax, 0x30
mov qword [rbp + 0x2b0], rax
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x2b0]
mov rcx, rsp
mov qword [rbp + 0x2b8], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x2e0]
mov rcx, rsp
mov qword [rbp + 0x2c0], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x2e0]
mov rcx, rsp
mov qword [rbp + 0x2c8], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x2e0]
mov rcx, rsp
mov qword [rbp + 0x2d0], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x2e0]
mov rcx, rsp
mov qword [rbp + 0x2d8], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x2e0]
mov rcx, rsp
mov qword [rbp + 0x2e8], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x2f0], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x2f8]
add rsp, 0x20
mov qword [rbp + 0x308], rax
add rax, 0x60
mov qword [rbp + 0x300], rax
mov word [rcx], 0xc4
sub rsp, 0x20
call fcn.14008b2d0
mov rcx, qword [rbp + 0x308]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x314]
mov qword [rbp + 0x318], rdx
cmp byte [rcx + 0x60], 0
sete cl
mov byte [rbp + 0x326], cl
cmp eax, 0x5cf3f396
jb 0x1400fe332
mov dl, byte [rbp + 0x326]
xor eax, eax
mov cl, al
xor eax, eax
test dl, 1
mov byte [rbp + 0x287], cl
mov rcx, rax
mov qword [rbp + 0x288], rcx
mov rcx, rax
mov qword [rbp + 0x290], rcx
mov rcx, rax
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fb220
jmp 0x1400fdb57
mov rdx, qword [rbp + 0x318]
mov rcx, qword [rbp + 0x2c8]
mov rax, qword [rbp + 0x328]
mov rdx, qword [rdx]
add rdx, qword [rax]
sub rsp, 0x20
call fcn.140031800
mov rcx, qword [rbp + 0x2c8]
mov rdx, qword [rbp + 0x318]
add rsp, 0x20
mov rax, qword [rcx]
mov qword [rbp + 0x258], rax
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x260], rcx
mov rcx, qword [rdx]
mov qword [rbp + 0x268], rcx
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x270], rdx
cmp rcx, 0
mov qword [rbp + 0x278], rax
jle 0x1400fb692
mov rdx, qword [rbp + 0x268]
mov rcx, rdx
add rcx, 1
mov qword [rbp + 0x250], rcx
mov rax, rdx
xor rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
and rax, 0xffffffffffffffff
shl rax, 1
movabs r8, 0xbc200ce9a81704e5
movabs r9, 0x43dff31657e8fb1a
xor r8, r9
sub rax, r8
sub rdx, rax
movabs rax, 0x447a17553b7bb7c2
movabs r8, 0xbb85e8aac484483d
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x1ffa3df61d9b7d58
movabs rdx, 0x1ffa3df61d9b7d58
xor rcx, rdx
cmp rax, rcx
jge 0x1400fb339
sub rsp, 0x20
call fcn.14000ee80
mov rax, qword [rbp + 0x258]
add rsp, 0x20
mov qword [rbp + 0x278], rax
jmp 0x1400fb692
mov eax, dword [0x1402ae500]
mov r8d, dword [0x1402ae504]
mov edx, r8d
xor edx, 0xffffffff
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
imul ecx, eax, 0xcaf614b1
mov eax, 0x7042b88f
xor eax, 0x8fbd4770
mov edx, ecx
xor edx, eax
mov eax, 0x3e1d3a27
xor eax, 0x23c4207c
and eax, edx
mov edx, 0xffffffff
xor edx, 0x1dd91a5b
and ecx, edx
or eax, ecx
add eax, 0xb5e8d569
cmp eax, 0xa1f6b855
jbe 0x1400fe33b
mov rcx, qword [rbp + 0x250]
mov edx, dword [0x1402ae508]
sub edx, dword [0x1402ae50c]
mov eax, 0xffffffff
xor eax, 0xdb5697b
mov r8d, 0x1d732644
xor r8d, 0x1d732644
mov r9d, 0xd91c3dc0
xor r9d, 0xd91c3dc1
sub r8d, r9d
sub eax, r8d
sub edx, eax
mov eax, edx
and eax, 0xab024559
xor eax, 0xffffffff
mov r8d, 0x9d5430ba
xor r8d, 0x62abcf45
xor edx, r8d
mov r8d, 0x30c9ee84
xor r8d, 0x9bcbabdd
mov r9d, 0xa07778d0
xor r9d, 0x5f88872f
xor r8d, r9d
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
and eax, 0x260f025e
cmp rcx, 0
setl cl
mov byte [rbp + 0x24f], cl
cmp eax, 0x6ae29cfc
ja 0x1400fe33b
mov al, byte [rbp + 0x24f]
test al, 1
jne 0x1400fb449
jmp 0x1400fb47e
mov rcx, qword [rbp + 0x250]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.140018506
mov rax, qword [rbp + 0x258]
add rsp, 0x20
mov qword [rbp + 0x278], rax
jmp 0x1400fb692
mov rax, qword [rbp + 0x270]
mov rdx, qword [rbp + 0x258]
mov rcx, qword [rbp + 0x260]
add rcx, 8
add rcx, rdx
mov qword [rbp + 0x230], rcx
add rax, 8
mov qword [rbp + 0x238], rax
xor eax, eax
mov qword [rbp + 0x240], rax
mov rcx, qword [rbp + 0x240]
mov rdx, qword [rbp + 0x268]
mov rax, qword [rbp + 0x230]
mov r8, qword [rbp + 0x238]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
mov rax, rcx
add rax, 1
cmp rcx, rdx
mov qword [rbp + 0x240], rax
jne 0x1400fb4b5
mov rcx, qword [rbp + 0x268]
mov r8, qword [rbp + 0x258]
movabs rdx, 0x98f9155ab7c8f5c7
mov rax, rcx
sub rax, rdx
add rax, r8
movabs rdx, 0x98f9155ab7c8f5c7
add rax, rdx
mov rdx, rax
xor rdx, r8
mov r8, rax
xor r8, rcx
movabs r9, 0x4e61d77846467d3f
movabs rcx, 0xb19e2887b9b982c0
xor r9, rcx
mov rcx, rdx
xor rcx, r9
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov rdx, r8
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
mov qword [rbp + 0x278], rax
jge 0x1400fb692
mov eax, dword [0x1402ae510]
add eax, dword [0x1402ae514]
mov ecx, eax
xor ecx, 0xb42e8dcb
mov edx, 0xd392e36c
xor edx, 0x2c6d1c93
xor ecx, edx
or eax, 0xb42e8dcb
and eax, ecx
mov ecx, 0x53c6339e
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xffffffff
xor edx, 0x949d98c4
mov r8d, 0xffffffff
xor r8d, 0x949d98c4
and edx, r8d
xor eax, 0xffffffff
mov r8d, 0xc2d4cd78
xor r8d, 0x3d2b3287
xor edx, r8d
and eax, edx
or ecx, 0x949d98c4
mov edx, 0xf20fa97a
xor edx, 0xdf05685
xor ecx, edx
mov edx, 0xbf5c94af
xor edx, 0x40a36b50
xor eax, edx
mov edx, 0x4f74f52b
xor edx, 0xb08b0ad4
xor ecx, edx
and eax, ecx
cmp eax, 0x47c92172
je 0x1400fe344
mov eax, dword [0x1402ae518]
xor eax, 0x1045d16c
xor eax, dword [0x1402ae51c]
imul eax, eax, 0x57109e11
sub eax, 0x927434d5
mov ecx, 0x98c186bd
xor ecx, 0x67a1663e
xor edx, edx
div ecx
mov dword [rbp + 0x22c], eax
mov eax, 0x402c5862
xor eax, 0x15a255b3
mov dword [rbp + 0x228], eax
sub rsp, 0x20
call fcn.14000ee80
mov ecx, dword [rbp + 0x228]
mov eax, dword [rbp + 0x22c]
add rsp, 0x20
cmp eax, ecx
ja 0x1400fb61d
mov rax, qword [rbp + 0x258]
mov qword [rbp + 0x278], rax
jmp 0x1400fb692
mov rdx, qword [rbp + 0x328]
mov rax, qword [rbp + 0x278]
mov qword [rbp + 0x200], rax
mov rcx, qword [rdx]
mov qword [rbp + 0x208], rcx
mov r8, rdx
add r8, 8
mov qword [rbp + 0x210], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x218], rdx
cmp rcx, 0
mov qword [rbp + 0x220], rax
jle 0x1400fbbf0
mov eax, dword [0x1402ae520]
sub eax, dword [0x1402ae524]
mov ecx, 0x7ccd134d
xor edx, edx
div ecx
sub eax, 0x2b3046e8
mov ecx, eax
and ecx, 0xb47ec870
shl ecx, 1
add eax, 0xb47ec870
sub eax, ecx
cmp eax, 0xb9113208
je 0x1400fe34d
mov r8, qword [rbp + 0x208]
mov eax, dword [0x1402ae528]
mov ecx, 0x72ddbd93
xor ecx, 0x3336f312
xor eax, ecx
mov edx, dword [0x1402ae52c]
mov ecx, eax
and ecx, edx
shl ecx, 1
xor eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x889c7683
shl ecx, 1
add eax, 0x889c7683
sub eax, ecx
mov ecx, 0x5fc56319
xor ecx, 0xa03a9ce6
mov edx, eax
xor edx, ecx
and edx, 0xfb360563
mov r9d, 0xffffffff
xor r9d, 0xfb360563
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, 0xfb360563
or eax, 0xfb360563
imul eax, edx
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, 0x9d1285d
xor eax, 0x9d1285d
mov edx, 0xfd926bf
xor edx, 0x369facfb
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov rcx, r8
add rcx, 1
mov qword [rbp + 0x1f0], rcx
mov rdx, r8
xor rdx, 0xffffffffffffffff
movabs r9, 0x73271539be5e6482
movabs r10, 0x8cd8eac641a19b7d
xor r9, r10
xor rdx, r9
and rdx, 0xffffffffffffffff
shl rdx, 1
sub rdx, 0xffffffffffffffff
sub r8, rdx
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r9, 0x4d875200b022316b
xor rdx, r9
or rcx, r8
movabs r8, 0x4d875200b022316b
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
movabs rdx, 0x7581cacb13d1309f
movabs r8, 0x7581cacb13d1309f
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rbp + 0x1ff], cl
cmp eax, 0xa3d9e36a
ja 0x1400fb712
mov al, byte [rbp + 0x1ff]
test al, 1
jne 0x1400fb85e
jmp 0x1400fb87e
sub rsp, 0x20
call fcn.14000ee80
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov qword [rbp + 0x220], rax
jmp 0x1400fbbf0
mov edx, dword [0x1402ae530]
mov ecx, dword [0x1402ae534]
mov eax, edx
xor eax, 0xffffffff
mov r11d, 0x419508a4
xor r11d, 0xa6f0327e
and r11d, eax
mov r8d, 0xee016403
xor r8d, 0x9645ed9
mov eax, 0x58478b5f
xor eax, 0xa7b874a0
xor r8d, eax
and edx, r8d
mov eax, ecx
xor eax, 0xffffffff
mov r9d, 0x98a897b3
xor r9d, 0x7fcdad69
and eax, r9d
and ecx, r8d
or r11d, edx
or eax, ecx
xor r11d, eax
sub r11d, 0x5ca41068
sub r11d, 0xa0f15db1
mov eax, 0xb0ef0855
xor eax, 0xec4b183d
add r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x9eb1f52a
mov edx, 0x44470d37
xor edx, 0x13a2c105
mov eax, 0x1bdcf602
xor eax, 0xe42309fd
xor edx, eax
mov eax, ecx
and eax, 0x57e5cc32
and r11d, edx
mov r10d, 0xd80125df
xor r10d, 0x8fe4e9ed
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x9eb1f52a
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x57e5cc32
and ecx, edx
or eax, ecx
xor eax, 0xc6ba16f8
cmp eax, 0x7293a04d
ja 0x1400fe356
mov rcx, qword [rbp + 0x1f0]
mov eax, dword [0x1402ae538]
and eax, dword [0x1402ae53c]
mov r8d, 0xe055a325
xor r8d, 0xae818f3c
xor edx, edx
div r8d
sub eax, 0xccac9fe4
mov edx, 0xaf585122
xor edx, 0x4544d3c
add eax, edx
cmp rcx, 0
setl cl
mov byte [rbp + 0x1ef], cl
cmp eax, 0x22c097ef
jbe 0x1400fb971
mov al, byte [rbp + 0x1ef]
test al, 1
jne 0x1400fb9d3
jmp 0x1400fba08
mov rcx, qword [rbp + 0x1f0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.140018506
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov qword [rbp + 0x220], rax
jmp 0x1400fbbf0
mov eax, dword [0x1402ae540]
mov ecx, dword [0x1402ae544]
mov edx, 0xc254855e
xor edx, 0xa83e77d8
xor ecx, edx
and eax, ecx
mov ecx, 0x22c5b8a6
xor edx, edx
div ecx
mov ecx, 0x56eb5e4d
xor edx, edx
div ecx
xor eax, 0x44711dad
mov ecx, 0x66a14b8d
xor ecx, 0xc63f57a8
cmp eax, ecx
ja 0x1400fe35f
mov rcx, qword [rbp + 0x218]
mov r8, qword [rbp + 0x200]
mov eax, dword [0x1402ae548]
xor edx, edx
div dword [0x1402ae54c]
mov rdx, qword [rbp + 0x260]
mov r10d, eax
mov r9d, r10d
xor r9d, 0x76340878
mov eax, 0x66cb612e
xor eax, 0x10ff6956
mov r11d, 0xe60cb53
xor r11d, 0xf19f34ac
xor eax, r11d
and r10d, eax
mov eax, 0x55ddf9f7
xor eax, 0x55ddf9f5
imul eax, r10d
sub eax, r9d
mov r9d, 0xcc010e8
xor r9d, 0x9166d6be
xor eax, r9d
imul eax, eax, 0x3ce91e75
add rdx, 8
add rdx, r8
mov qword [rbp + 0x1d8], rdx
add rcx, 8
mov qword [rbp + 0x1e0], rcx
cmp eax, 0x8d70077f
jbe 0x1400fe35f
xor eax, eax
mov qword [rbp + 0x1d0], rax
jmp 0x1400fbaf3
mov rcx, qword [rbp + 0x1d0]
mov rdx, qword [rbp + 0x208]
mov rax, qword [rbp + 0x1d8]
mov r8, qword [rbp + 0x1e0]
mov r8b, byte [r8 + rcx]
mov byte [rax + rcx], r8b
xor eax, eax
mov r8d, eax
sub r8, 1
mov rax, rcx
sub rax, r8
cmp rcx, rdx
mov qword [rbp + 0x1d0], rax
jne 0x1400fbaf3
mov rcx, qword [rbp + 0x208]
mov r9, qword [rbp + 0x200]
movabs rdx, 0x37e68546b07e4bfd
movabs rax, 0x37e68546b07e4bfd
xor rdx, rax
sub rdx, rcx
xor eax, eax
sub rax, r9
add rdx, rax
xor eax, eax
sub rax, rdx
movabs rdx, 0xb3553b615f28771a
movabs r8, 0x4caac49ea0d788e5
xor rdx, r8
mov r8, rax
xor r8, rdx
mov rdx, r9
and rdx, r8
xor r9, 0xffffffffffffffff
mov r8, rax
and r8, r9
or rdx, r8
mov r8, rax
xor r8, rcx
movabs rcx, 0x3f6d14be48790cad
movabs r9, 0xc092eb41b786f352
xor rcx, r9
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rbp + 0x220], rax
jge 0x1400fbbf0
sub rsp, 0x20
call fcn.14000ee80
mov rax, qword [rbp + 0x200]
add rsp, 0x20
mov qword [rbp + 0x220], rax
mov rax, qword [rbp + 0x220]
mov qword [rbp + 0x1c8], rax
mov eax, dword [0x1402ae550]
xor eax, dword [0x1402ae554]
xor ecx, ecx
sub ecx, 0xb391cdbe
sub eax, ecx
xor eax, 0x87eff74c
and eax, 0xd113f36b
cmp eax, 0x6f861cc6
jbe 0x1400fe368
mov eax, dword [0x1402ae558]
sub eax, dword [0x1402ae55c]
mov edx, 0xd2c98f71
xor edx, 0x2d36708e
mov ecx, eax
xor ecx, edx
mov edx, 0x5df8e5b1
xor edx, 0x798d888f
and edx, ecx
mov r8d, 0xffffffff
xor r8d, 0x24756d3e
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0x188b3586
xor r8d, 0x3cfe58b8
mov edx, eax
and edx, r8d
or eax, 0x24756d3e
imul eax, edx
add eax, ecx
add eax, 0xc1254ec0
mov ecx, 0x4fd17f44
xor edx, edx
div ecx
mov dword [rbp + 0x1b4], eax
mov eax, 0x9a7ed439
xor eax, 0xe0e19787
mov dword [rbp + 0x1b0], eax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov r8, qword [rbp + 0x260]
mov r10, qword [rbp + 0x1c8]
mov ecx, dword [rbp + 0x1b0]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x1b4]
add r8, 8
lea r9, [0x1402c30a0]
cmp r10, 0
cmove r8, r9
mov qword [rbp + 0x1b8], r8
cmp byte [rdx + 0x60], 0
sete dl
mov byte [rbp + 0x1c7], dl
cmp eax, ecx
ja 0x1400fe368
mov al, byte [rbp + 0x1c7]
test al, 1
jne 0x1400fbd1b
jmp 0x1400fbd95
mov rax, qword [rbp + 0x1c8]
cmp rax, 0
jge 0x1400fbd73
mov rcx, qword [rbp + 0x1c8]
movabs rdx, 0xd5dd44d35f78637d
movabs rax, 0xd5dd44d35f78637d
xor rdx, rax
movabs r8, 0x4b31abab602c3b19
movabs rax, 0x34ce54549fd3c4e6
xor r8, rax
sub rsp, 0x20
call fcn.140018506
add rsp, 0x20
jmp 0x1400fbd95
mov r8, qword [rbp + 0x1c8]
mov rdx, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x2d0]
sub rsp, 0x20
call fcn.1400dcd20
add rsp, 0x20
mov rdx, qword [rbp + 0x260]
mov r9, qword [rbp + 0x300]
mov rax, qword [rbp + 0x2d0]
mov rcx, qword [rax]
mov qword [rbp + 0x1a0], rcx
mov rcx, qword [rax + 8]
mov qword [rbp + 0x1a8], rcx
xor eax, eax
mov r8b, al
xor eax, eax
cmp byte [r9], 0
mov byte [rbp + 0x287], r8b
mov qword [rbp + 0x288], rdx
mov qword [rbp + 0x290], rcx
mov rcx, rax
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov ecx, dword [0x1402ae560]
mov eax, dword [0x1402ae564]
xor eax, 0x2be54adf
add ecx, 0x8e0793fa
sub ecx, eax
sub ecx, 0x8e0793fa
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xbd88cfab
and eax, edx
mov edx, 0x6c66220f
xor edx, 0x9399ddf0
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xbd88cfab
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
or eax, 0x94bba04c
and eax, 0xab01578c
mov ecx, 0xc2740728
xor ecx, 0xbcc9d256
cmp eax, ecx
je 0x1400fe371
mov rcx, qword [rbp + 0x1a0]
mov eax, dword [0x1402ae568]
add eax, dword [0x1402ae56c]
add eax, 0xd3380140
sub eax, 0xba3d3c67
mov edx, 0x5e1b20f6
xor edx, 0x8d2321b6
sub eax, edx
or eax, 0xff4a4795
sub eax, 0x6c6a15e9
mov dword [rbp + 0x18c], eax
mov r8d, 2
mov rax, rcx
cqo
idiv r8
mov r8, rax
mov eax, dword [rbp + 0x18c]
movabs r9, 0x49a112feaddea1a0
mov rdx, r8
add rdx, r9
add rdx, 0xffffffffffffffff
movabs r9, 0xb99fceb6f8492a17
movabs r10, 0xf03edc4855978bb7
xor r9, r10
sub rdx, r9
mov qword [rbp + 0x190], rdx
xor rdx, r8
cmp rdx, 0
setl dl
cmp rcx, 1
setg cl
and cl, dl
mov byte [rbp + 0x19f], cl
cmp eax, 0x466455bc
jb 0x1400fbe63
mov al, byte [rbp + 0x19f]
test al, 1
jne 0x1400fc084
jmp 0x1400fbf20
mov r8d, dword [0x1402ae570]
mov eax, dword [0x1402ae574]
add r8d, 0x3b9b2ed2
sub r8d, eax
mov eax, 0x5903e6c
xor eax, 0x3e0b10be
sub r8d, eax
mov ecx, 0x610663a3
xor ecx, 0x9ef99c5c
mov eax, r8d
xor eax, ecx
and eax, 0x1db91bcb
mov edx, 0xffffffff
xor edx, 0x1db91bcb
and r8d, edx
mov ecx, 0xb511788f
xor ecx, 0x47cbb9fb
mov r9d, 0xc64f8c00
xor r9d, 0x39b073ff
xor ecx, r9d
mov r9d, 0xe9793dd2
xor r9d, 0xf4c02619
and ecx, r9d
and edx, 0xf2dac174
or eax, r8d
or ecx, edx
xor eax, ecx
and eax, 0xdc2560b7
imul eax, eax, 0x8b0d3f0
cmp eax, 0x314b2438
jbe 0x1400fe37a
mov rdx, qword [rbp + 0x190]
mov eax, dword [0x1402ae578]
mov ecx, 0xbe6d9327
xor ecx, 0xf79aec
xor eax, ecx
mov r9d, dword [0x1402ae57c]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov ecx, eax
or ecx, r10d
xor ecx, 0xffffffff
imul ecx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, ecx
add eax, 0x5833abf1
mov ecx, 0x285fd392
xor ecx, 0xd7a02c6d
mov r8d, eax
xor r8d, ecx
and r8d, 0x40b8cef3
mov r9d, 0xffffffff
xor r9d, 0x40b8cef3
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r8d, eax
and r8d, 0x40b8cef3
mov r9d, 0x2a1a9973
xor r9d, 0x6aa25780
or eax, r9d
imul eax, r8d
add eax, ecx
and eax, 0x1890d9a8
xor ecx, ecx
test rdx, rdx
cmovg rcx, rdx
mov qword [rbp + 0x180], rcx
cmp eax, 0x28d14a56
jae 0x1400fbfb5
mov rax, qword [rbp + 0x180]
mov qword [rbp + 0x178], rax
jmp 0x1400fc0dd
sub rsp, 0x20
call fcn.14000ee80
mov r9, qword [rbp + 0x300]
mov rdx, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x1a8]
add rsp, 0x20
xor eax, eax
mov r8b, al
xor eax, eax
cmp byte [r9], 0
mov byte [rbp + 0x287], r8b
mov qword [rbp + 0x288], rdx
mov qword [rbp + 0x290], rcx
mov rcx, rax
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov rcx, qword [rbp + 0x178]
mov rax, rcx
shl rax, 1
mov qword [rbp + 0x160], rax
cvtsi2sd xmm0, rcx
movsd xmm1, qword [0x1402c2d50]
mulsd xmm0, xmm1
movsd qword [rbp + 0x168], xmm0
cvtsi2sd xmm1, rax
movsd qword [rbp + 0x170], xmm1
ucomisd xmm0, xmm1
jne 0x1400fc12d
jp 0x1400fc12d
jmp 0x1400fc1d9
movsd xmm1, qword [rbp + 0x168]
movsd xmm0, qword [rbp + 0x170]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.1402a7e80
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x168]
movsd qword [rbp + 0x158], xmm1
sub rsp, 0x20
call fcn.1402a7e80
movsd xmm1, qword [rbp + 0x158]
add rsp, 0x20
movsd xmm2, qword [0x1402c2d58]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1400fc1d9
sub rsp, 0x20
call fcn.14000ee80
mov rdx, qword [rbp + 0x260]
mov rcx, qword [rbp + 0x1a8]
add rsp, 0x20
xor eax, eax
mov r8b, al
xor eax, eax
mov byte [rbp + 0x287], r8b
mov qword [rbp + 0x288], rdx
mov qword [rbp + 0x290], rcx
mov rcx, rax
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jmp 0x1400fdb57
mov eax, dword [0x1402ae580]
sub eax, dword [0x1402ae584]
mov ecx, 0xb85f6d4e
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0x261f8139
xor ecx, 0xffffffff
or eax, 0x261f8139
and eax, ecx
xor eax, 0xac96001d
cmp eax, 0x5219c088
jb 0x1400fe383
mov rcx, qword [rbp + 0x160]
mov eax, dword [0x1402ae588]
mov edx, 0x69250b7e
xor edx, 0x5cbdcdb3
xor eax, edx
add eax, dword [0x1402ae58c]
sub eax, 0x85304998
mov r8d, 0xe29cc4a9
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp + 0x2a8]
imul edx, edx, 0x9d255e55
mov dword [rbp + 0x150], edx
mov word [rax], cx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
mov rcx, rax
mov eax, dword [rbp + 0x150]
mov cl, byte [rcx + 0x60]
mov dl, 0xb9
xor dl, 0xb9
cmp cl, dl
sete cl
mov byte [rbp + 0x157], cl
cmp eax, 0x9cf19290
ja 0x1400fc210
mov al, byte [rbp + 0x157]
test al, 1
jne 0x1400fc2a8
jmp 0x1400fc42a
mov rax, qword [rbp + 0x1c8]
cmp rax, 0
jge 0x1400fc408
mov eax, dword [0x1402ae590]
mov edx, dword [0x1402ae594]
mov ecx, 0x995a3469
xor ecx, 0x66a5cb96
mov r8d, eax
xor r8d, ecx
mov ecx, edx
and ecx, r8d
mov r8d, 0x399547ba
xor r8d, 0xc66ab845
xor edx, r8d
and eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0x11cbd925
xor eax, 0xffffffff
and eax, 0x11cbd925
shl eax, 1
mov edx, 0x7f958631
xor edx, 0x6e5e5f14
sub eax, edx
sub ecx, eax
xor ecx, 0xcdd8fba5
mov eax, ecx
or eax, 0xbe86d6c3
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xbe86d6c3
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
cmp eax, 0x41556cab
jb 0x1400fe38c
mov rcx, qword [rbp + 0x1c8]
mov edx, dword [0x1402ae598]
mov eax, dword [0x1402ae59c]
xor eax, 0x6178bc46
add edx, eax
mov eax, 0xffffffff
xor eax, 0xe44ac951
add edx, eax
add edx, 1
mov r8d, 0x96e6e3b0
xor r8d, 0x8f5711dc
mov eax, edx
or eax, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x19b1f26c
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
xor eax, 0x6014c007
mov dword [rbp + 0x14c], eax
mov eax, 0x61be02f1
xor eax, 0xb0d36126
mov dword [rbp + 0x148], eax
movabs rdx, 0xd2719b5a6654fee4
movabs rax, 0xd2719b5a6654fee4
xor rdx, rax
movabs r8, 0xb6ffb3b861a7fe06
movabs rax, 0xc9004c479e5801f9
xor r8, rax
sub rsp, 0x20
call fcn.140018506
mov ecx, dword [rbp + 0x148]
mov eax, dword [rbp + 0x14c]
add rsp, 0x20
cmp eax, ecx
ja 0x1400fc340
jmp 0x1400fc42a
mov r8, qword [rbp + 0x1c8]
mov rdx, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x2d8]
sub rsp, 0x20
call fcn.1400dcd20
add rsp, 0x20
mov eax, dword [0x1402ae5a0]
add eax, dword [0x1402ae5a4]
sub eax, 0x5c078e33
add eax, 0xaa9a83f5
and eax, 0x7a9220db
mov ecx, 0x949c761b
xor ecx, 0x5921fe00
cmp eax, ecx
je 0x1400fe395
mov rcx, qword [rbp + 0x300]
mov rdx, qword [rbp + 0x2d8]
mov r8d, dword [str.6__nJ]
mov eax, 0xd3e3b76b
xor eax, 0x719aebfc
xor r8d, eax
mov eax, dword [0x1402ae5ac]
xor eax, 0x41d14292
xor r8d, eax
xor eax, eax
sub eax, 0xad574a0d
add r8d, eax
mov eax, r8d
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x34e49916
or eax, r9d
mov r9d, 0xf250aa52
xor r9d, 0xc6b43344
mov r10d, 0x3ec37bd3
xor r10d, 0xc13c842c
xor r9d, r10d
mov r10d, 0xc9d02f7c
xor r10d, 0xfd34b66a
mov r11d, 0xc05ce28e
xor r11d, 0x3fa31d71
xor r10d, r11d
or r9d, r10d
and r8d, r9d
xor r8d, 0xffffffff
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
xor r8d, r8d
sub r8d, 0x2f9bb84a
sub eax, r8d
mov r8, qword [rdx]
mov qword [rbp + 0x130], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x138], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x147], cl
cmp eax, 0xbc82e4f9
jae 0x1400fc458
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
mov r10b, byte [rbp + 0x147]
xor eax, eax
mov r9b, al
xor eax, eax
test r10b, 1
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fc589
jmp 0x1400fdb57
mov rax, qword [rbp + 0x130]
mov ecx, 2
cqo
idiv rcx
mov rdx, rax
mov rax, qword [rbp + 0x130]
movabs r8, 0x6fee7c1452598417
movabs rcx, 0x901183ebada67be8
xor r8, rcx
mov rcx, rdx
add rcx, r8
mov qword [rbp + 0x128], rcx
xor rcx, rdx
cmp rcx, 0
setl dl
cmp rax, 1
setg cl
xor dl, 0xff
mov al, cl
xor al, dl
and al, cl
test al, 1
jne 0x1400fc606
mov rcx, qword [rbp + 0x128]
xor eax, eax
test rcx, rcx
cmovg rax, rcx
mov qword [rbp + 0x120], rax
jmp 0x1400fc66c
sub rsp, 0x20
call fcn.14000ee80
mov rax, qword [rbp + 0x300]
mov r8, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov r10b, byte [rax]
mov r11b, 0xae
xor r11b, 0xae
xor eax, eax
mov r9b, al
xor eax, eax
cmp r10b, r11b
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0x118], rax
mov eax, dword [0x1402ae5b0]
xor eax, 0xf91f5b5f
mov edx, dword [0x1402ae5b4]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
mov r8d, 0xded1b498
xor r8d, 0x212e4b67
xor edx, r8d
and eax, edx
sub eax, ecx
add eax, 0xf175fb2f
mov edx, eax
xor edx, 0xffffffff
and edx, 0xce0616c0
mov r8d, 0xe57bbd58
xor r8d, 0x2b7dab98
mov ecx, 0xd48abc47
xor ecx, 0x2b7543b8
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xce0616c0
or eax, 0xce0616c0
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x9976f991
shl ecx, 1
mov edx, 0xa076dd0b
xor edx, 0x3900249a
add eax, edx
sub eax, ecx
cmp eax, 0x34d7e77f
jbe 0x1400fe39e
mov r8, qword [rbp + 0x118]
mov ecx, dword [0x1402ae5b8]
mov edx, dword [0x1402ae5bc]
mov r9d, ecx
xor r9d, 0xffffffff
mov eax, edx
and eax, r9d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0xb82165b5
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x51de15ae
mov ecx, 0xffffffff
xor ecx, 0xeb51c928
or eax, edx
or ecx, 0xeb51c928
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0xa5f47ddb
xor edx, edx
div ecx
mov ecx, 0x22085a31
xor ecx, 0xa7590dc8
mov dword [rbp + 0xf4], ecx
movabs rcx, 0xee497a3fd7b362cd
movabs rdx, 0xee497a3fd7b362cc
xor rcx, rdx
mov rdx, r8
shl rdx, cl
mov ecx, dword [rbp + 0xf4]
mov qword [rbp + 0xf8], rdx
cvtsi2sd xmm0, r8
movsd xmm1, qword [0x1402c2d50]
mulsd xmm0, xmm1
movsd qword [rbp + 0x100], xmm0
cvtsi2sd xmm1, rdx
movsd qword [rbp + 0x108], xmm1
ucomisd xmm0, xmm1
sete dl
setnp r8b
and dl, r8b
mov byte [rbp + 0x117], dl
cmp eax, ecx
jae 0x1400fc710
mov al, byte [rbp + 0x117]
test al, 1
jne 0x1400fc8aa
jmp 0x1400fc7fa
movsd xmm1, qword [rbp + 0x100]
movsd xmm0, qword [rbp + 0x108]
subsd xmm0, xmm1
sub rsp, 0x20
call fcn.1402a7e80
add rsp, 0x20
movaps xmm1, xmm0
movsd xmm0, qword [rbp + 0x100]
movsd qword [rbp + 0xe8], xmm1
sub rsp, 0x20
call fcn.1402a7e80
movsd xmm1, qword [rbp + 0xe8]
add rsp, 0x20
movsd xmm2, qword [0x1402c2d58]
mulsd xmm1, xmm2
ucomisd xmm0, xmm1
jae 0x1400fc8aa
sub rsp, 0x20
call fcn.14000ee80
mov r8, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
xor eax, eax
mov r9b, al
xor eax, eax
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jmp 0x1400fdb57
mov rax, qword [rbp + 0x2a8]
mov rcx, qword [rbp + 0xf8]
mov dx, 0x78d0
xor dx, 0x78d2
add cx, dx
mov word [rax + 2], cx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
cmp byte [rax + 0x60], 0
jne 0x1400fc942
mov rax, qword [rbp + 0x1c8]
cmp rax, 0
jge 0x1400fc920
mov rcx, qword [rbp + 0x1c8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
sub rsp, 0x20
call fcn.140018506
add rsp, 0x20
jmp 0x1400fc942
mov r8, qword [rbp + 0x1c8]
mov rdx, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x2e8]
sub rsp, 0x20
call fcn.1400dcd20
add rsp, 0x20
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
mov r10, qword [rbp + 0x300]
mov rax, qword [rbp + 0x2e8]
mov r9, qword [rax]
mov qword [rbp + 0xd8], r9
mov rax, qword [rax + 8]
mov qword [rbp + 0xe0], rax
xor r9d, r9d
cmp byte [r10], 0
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov rdi, qword [rbp + 0xd8]
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov r10, qword [rbp + 0x2a8]
mov r9, qword [rbp + 0x300]
mov r8, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
mov r11, rax
add r11, 8
lea rsi, [0x1402c30a0]
cmp rdi, 0
cmove r11, rsi
mov qword [r10 + 8], r11
mov r10b, byte [r9]
mov r11b, 0x75
xor r11b, 0x75
xor r9d, r9d
cmp r10b, r11b
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
xor eax, eax
mov qword [rbp + 0xd0], rax
mov rax, qword [rbp + 0xd0]
mov rcx, qword [rbp + 0x2b8]
xorps xmm0, xmm0
movups xmmword [rcx + rax], xmm0
movabs rcx, 0xa4e4b7a5a1284b71
sub rax, rcx
movabs rcx, 0x7f70b7b3c3a97690
movabs rdx, 0x7f70b7b3c3a97680
xor rcx, rdx
add rax, rcx
movabs rcx, 0xa4e4b7a5a1284b71
add rax, rcx
cmp rax, 0x30
mov qword [rbp + 0xd0], rax
jne 0x1400fca63
mov rcx, qword [rbp + 0x2a8]
mov rax, qword [rbp + 0x2b8]
mov dword [rax], 0x30
sub rsp, 0x20
call fcn.1400d95f3
mov r10, qword [rbp + 0x300]
mov r8, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov r9, rax
mov rax, qword [rbp + 0xe0]
mov qword [rbp + 0xc8], r9
xor r9d, r9d
cmp byte [r10], 0
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov rax, qword [rbp + 0x2b8]
mov rcx, qword [rbp + 0xc8]
mov qword [rax + 0x10], rcx
mov dword [rax + 0x18], 0x40
mov qword [rax + 8], 0
mov qword [rax + 0x20], 0
mov qword [rax + 0x28], 0
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
add rsp, 0x20
movaps xmm0, xmmword [0x1402c2d60]
movaps xmm1, xmmword [0x1402c2d70]
movaps xmm2, xmmword [0x1402c2d80]
movaps xmm3, xmmword [0x1402c2d90]
xor eax, eax
mov qword [rbp + 0x78], rax
movaps xmmword [rbp + 0x80], xmm3
movaps xmmword [rbp + 0x90], xmm2
movaps xmmword [rbp + 0xa0], xmm1
movaps xmmword [rbp + 0xb0], xmm0
jmp 0x1400fcbc5
mov rax, qword [rbp + 0x78]
movaps xmm2, xmmword [rbp + 0x80]
movaps xmm7, xmmword [rbp + 0x90]
movaps xmm8, xmmword [rbp + 0xa0]
movaps xmm5, xmmword [rbp + 0xb0]
movaps xmmword [rbp + 0x10], xmm5
movaps xmmword [rbp + 0x20], xmm8
movaps xmmword [rbp + 0x30], xmm7
movaps xmmword [rbp + 0x40], xmm2
mov qword [rbp + 0x58], rax
movaps xmm6, xmmword [0x1402c2da0]
pxor xmm2, xmm6
pshufd xmm1, xmm2, 0xf5
movaps xmm3, xmmword [0x1402c2da0]
movaps xmm0, xmm3
pcmpeqd xmm0, xmm1
movaps xmm4, xmmword [0x1402c2db0]
movaps xmm1, xmm4
pcmpgtd xmm1, xmm2
pshufd xmm2, xmm1, 0xa0
pand xmm0, xmm2
pshufd xmm1, xmm1, 0xf5
por xmm0, xmm1
pxor xmm7, xmm6
pshufd xmm1, xmm7, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm1
movaps xmm1, xmm4
pcmpgtd xmm1, xmm7
pshufd xmm7, xmm1, 0xa0
pand xmm2, xmm7
pshufd xmm1, xmm1, 0xf5
por xmm2, xmm1
movaps xmm1, xmm0
packssdw xmm1, xmm2
pxor xmm8, xmm6
pshufd xmm7, xmm8, 0xf5
movaps xmm2, xmm3
pcmpeqd xmm2, xmm7
movaps xmm7, xmm4
pcmpgtd xmm7, xmm8
pshufd xmm8, xmm7, 0xa0
pand xmm2, xmm8
pshufd xmm7, xmm7, 0xf5
por xmm2, xmm7
pxor xmm5, xmm6
pshufd xmm6, xmm5, 0xf5
pcmpeqd xmm3, xmm6
pcmpgtd xmm4, xmm5
pshufd xmm5, xmm4, 0xa0
pand xmm3, xmm5
pshufd xmm4, xmm4, 0xf5
por xmm3, xmm4
packssdw xmm2, xmm3
packssdw xmm1, xmm2
movaps xmmword [rbp + 0x60], xmm1
movd eax, xmm0
test al, 1
jne 0x1400fccd7
jmp 0x1400fcdc1
mov eax, dword [0x1402ae5c0]
xor eax, 0x679672ee
and eax, dword [0x1402ae5c4]
mov ecx, 0xffffffff
xor ecx, 0xc109ba25
add eax, ecx
add eax, 1
add eax, 0xa3d38541
mov ecx, 0xd10a3d64
xor edx, edx
div ecx
mov ecx, 0x331e2b4d
xor ecx, 0x7847865e
cmp eax, ecx
je 0x1400fe3a7
mov rcx, qword [rbp + 0x2c0]
mov eax, dword [0x1402ae5c8]
xor eax, 0xec2e2add
mov r8d, dword [0x1402ae5cc]
mov edx, 0x3911e41e
xor edx, 0x3911e41e
sub edx, r8d
add eax, edx
mov r8d, 0x649ad94f
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x58]
add eax, 0x36df287a
sub eax, 0x966b3e5d
sub eax, 0x36df287a
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x13cb665b
mov r10d, 0xffffffff
xor r10d, 0x13cb665b
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x13cb665b
mov r10d, 0xa37c6fd3
xor r10d, 0xb0b70988
or eax, r10d
imul eax, r9d
add eax, r8d
mov r8b, 0x6b
xor r8b, 0x6b
mov byte [rcx + rdx], r8b
cmp eax, 0x45a285ef
je 0x1400fcd19
jmp 0x1400fcdc1
movaps xmm0, xmmword [rbp + 0x60]
movd eax, xmm0
shr eax, 0x10
test al, 1
jne 0x1400fcdd9
jmp 0x1400fcefa
mov ecx, dword [0x1402ae5d0]
mov r8d, dword [0x1402ae5d4]
mov edx, r8d
xor edx, 0xffffffff
mov eax, ecx
and eax, edx
mov edx, ecx
xor edx, r8d
add ecx, edx
sub ecx, eax
mov eax, ecx
and eax, 0xfa296b7e
mov edx, 0x7d6a8527
xor edx, 0x82957ad8
xor eax, edx
mov edx, 0x6263c223
xor edx, 0x9d9c3ddc
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xfa296b7e
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x631de57c
xor edx, edx
div ecx
mov ecx, 0x9a713924
xor ecx, 0x7068bf5d
xor edx, edx
div ecx
cmp eax, 0x9e848dd
ja 0x1400fe3b0
mov rcx, qword [rbp + 0x2c0]
mov r8, qword [rbp + 0x58]
mov edx, dword [0x1402ae5d8]
mov r9d, dword [0x1402ae5dc]
xor r9d, 0xffffffff
mov eax, edx
xor eax, r9d
and eax, edx
mov r9d, 0xd6f5ae2f
xor edx, edx
div r9d
and eax, 0x36b7a9fe
sub eax, 0x8e477b99
movabs r9, 0xa08e52c572c15103
movabs rdx, 0xa08e52c572c15102
xor r9, rdx
mov rdx, r8
or rdx, r9
movabs r9, 0xbf59344f42b55251
movabs r10, 0x40a6cbb0bd4aadae
xor r9, r10
xor rdx, r9
or r8, 1
xor r8, 0xffffffffffffffff
or rdx, r8
movabs r8, 0x8896676d9bc7be0e
movabs r9, 0x77699892643841f1
xor r8, r9
xor rdx, r8
mov byte [rcx + rdx], 0
cmp eax, 0x21204400
je 0x1400fe3b0
jmp 0x1400fcefa
mov eax, dword [0x1402ae5e0]
mov ecx, 0xfc5626bd
xor ecx, 0x81deb07c
xor eax, ecx
mov r8d, dword [0x1402ae5e4]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x9250dbc3
xor r9d, 0x6daf243c
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
or eax, 0xf1a9947f
mov ecx, 0xcc81e7d7
xor edx, edx
div ecx
mov ecx, 0x8d39692f
xor edx, edx
div ecx
cmp eax, 0x67ef1648
jae 0x1400fe3b9
movaps xmm0, xmmword [rbp + 0x60]
mov eax, dword [0x1402ae5e8]
mov ecx, dword [0x1402ae5ec]
or eax, ecx
imul eax, eax, 0x7365f6e4
add eax, 0xe2de1d9b
pextrw ecx, xmm0, 2
mov byte [rbp + 0xf], cl
cmp eax, 0xeba65737
je 0x1400fe3b9
mov al, byte [rbp + 0xf]
test al, 1
jne 0x1400fcfa7
jmp 0x1400fd0cc
mov eax, dword [0x1402ae5f0]
xor eax, dword [0x1402ae5f4]
mov ecx, 0xafa1b439
xor edx, edx
div ecx
xor eax, 0x7804e65f
mov ecx, 0x407d9790
xor ecx, 0xbf82686f
xor eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xb95283ec
mov edx, 0xffffffff
xor edx, 0xe72deefd
or eax, ecx
mov ecx, 0x972c541b
xor ecx, 0x7001bae6
or ecx, edx
xor eax, 0xffffffff
and eax, ecx
cmp eax, 0x40320026
je 0x1400fe3c2
mov rcx, qword [rbp + 0x2c0]
mov rdx, qword [rbp + 0x58]
mov r8d, dword [0x1402ae5f8]
mov r10d, dword [0x1402ae5fc]
mov eax, r8d
xor eax, 0xffffffff
mov r9d, r10d
and r9d, eax
mov eax, 0x6edab1f5
xor eax, 0x91254e0a
mov r11d, r10d
xor r11d, eax
mov eax, r8d
and eax, r11d
imul eax, r9d
mov r9d, r8d
and r9d, r10d
or r8d, r10d
imul r8d, r9d
add r8d, eax
and r8d, 0x7c58fadf
mov eax, r8d
xor eax, 0xffffffff
mov r9d, 0x8740cd4d
xor r9d, 0x9770c34d
mov r10d, 0x594fff82
xor r10d, 0xa6b0007d
xor r9d, r10d
and eax, r9d
or r8d, 0x10300e00
xor r8d, 0xffffffff
xor eax, 0xffffffff
xor r8d, 0xffffffff
and eax, r8d
mov r8d, eax
and r8d, 0xaf7ccb14
xor r8d, 0xffffffff
add eax, 0xaf7ccb14
add eax, 1
add eax, r8d
or rdx, 2
mov r8b, 0xd8
xor r8b, 0xd8
mov byte [rcx + rdx], r8b
cmp eax, 0xead6109b
ja 0x1400fe3c2
jmp 0x1400fd0cc
movaps xmm0, xmmword [rbp + 0x60]
pextrw eax, xmm0, 3
test al, 1
jne 0x1400fd0e2
jmp 0x1400fd0f5
mov rax, qword [rbp + 0x2c0]
mov rcx, qword [rbp + 0x58]
or rcx, 3
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x60]
pextrw eax, xmm0, 4
test al, 1
jne 0x1400fd10b
jmp 0x1400fd122
mov rax, qword [rbp + 0x2c0]
mov rcx, qword [rbp + 0x58]
or rcx, 4
mov dl, 0x2b
xor dl, 0x2b
mov byte [rax + rcx], dl
mov eax, dword [0x1402ae600]
mov ecx, 0xb888adab
xor ecx, 0xd1856afb
xor eax, ecx
xor eax, dword [0x1402ae604]
mov ecx, 0x814747b3
xor ecx, 0xd98d17ee
and eax, ecx
add eax, 0x41c019a9
mov ecx, 0x72b7df58
xor ecx, 0x91e5ec23
xor edx, edx
div ecx
cmp eax, 0x8780bcfb
jae 0x1400fe3cb
movaps xmm0, xmmword [rbp + 0x60]
mov eax, dword [0x1402ae608]
mov ecx, dword [0x1402ae60c]
xor eax, ecx
mov ecx, eax
xor ecx, 0x81082528
xor eax, 0x2e00807
and eax, 0x2ae31a97
and ecx, 0xd51ce568
or eax, ecx
xor eax, 0xe4f5d4f9
mov ecx, eax
imul rcx, rcx, 0x1eb6c399
shr rcx, 0x20
sub eax, ecx
shr eax, 1
add eax, ecx
shr eax, 0x1f
pextrw ecx, xmm0, 5
mov byte [rbp + 0xe], cl
cmp eax, 0x4541d962
jae 0x1400fd167
mov al, byte [rbp + 0xe]
test al, 1
jne 0x1400fd1d1
jmp 0x1400fd1e8
mov rax, qword [rbp + 0x2c0]
mov rcx, qword [rbp + 0x58]
or rcx, 5
mov dl, 0x8e
xor dl, 0x8e
mov byte [rax + rcx], dl
movaps xmm0, xmmword [rbp + 0x60]
pextrw eax, xmm0, 6
test al, 1
jne 0x1400fd1fe
jmp 0x1400fd255
mov rax, qword [rbp + 0x2c0]
mov rdx, qword [rbp + 0x58]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
or rcx, rdx
mov rdx, 0xffffffffffffffff
xor rdx, 6
mov r8, 0xffffffffffffffff
xor r8, 6
or rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0xbab23e851fe4f207
movabs r9, 0x454dc17ae01b0df8
xor r8, r9
xor rdx, r8
or rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x60]
pextrw eax, xmm0, 7
test al, 1
jne 0x1400fd26b
jmp 0x1400fd2bc
mov rax, qword [rbp + 0x2c0]
mov rcx, qword [rbp + 0x58]
mov rdx, rcx
and rdx, 7
movabs r8, 0xe32100ddbe55b24c
movabs r9, 0x1cdeff2241aa4db3
xor r8, r9
xor rdx, r8
add rcx, 7
movabs r8, 0x7db2d3e8cfdf4bed
movabs r9, 0x7db2d3e8cfdf4bec
xor r8, r9
add rcx, r8
add rcx, rdx
mov byte [rax + rcx], 0
movaps xmm0, xmmword [rbp + 0x10]
movaps xmm1, xmmword [rbp + 0x20]
movaps xmm2, xmmword [rbp + 0x30]
movaps xmm3, xmmword [rbp + 0x40]
mov rax, qword [rbp + 0x58]
add rax, 8
movaps xmm4, xmmword [0x1402c2dc0]
paddq xmm3, xmm4
paddq xmm2, xmm4
paddq xmm1, xmm4
paddq xmm0, xmm4
mov rcx, rax
sub rcx, 0x28
mov qword [rbp + 0x78], rax
movaps xmmword [rbp + 0x80], xmm3
movaps xmmword [rbp + 0x90], xmm2
movaps xmmword [rbp + 0xa0], xmm1
movaps xmmword [rbp + 0xb0], xmm0
jne 0x1400fcbc5
jmp 0x1400fd31d
mov rdx, qword [rbp + 0x2c0]
mov rcx, qword [rbp + 0x2b8]
mov rax, qword [0x1402c5e88]
sub rsp, 0x20
call qword [rax]
mov r10, qword [rbp + 0x300]
mov r8, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov r9d, eax
mov rax, qword [rbp + 0xe0]
mov dword [rbp + 8], r9d
xor r9d, r9d
cmp byte [r10], 0
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov eax, dword [rbp + 8]
sub eax, 0xc0000034
je 0x1400fd3bc
jmp 0x1400fd3a9
mov eax, dword [rbp + 8]
sub eax, 0xc000003a
jne 0x1400fd73c
jmp 0x1400fd3bc
mov rax, qword [rbp + 0x210]
mov rax, qword [rax]
mov qword [rbp], rax
cmp rax, 0
je 0x1400fd411
mov rax, qword [rbp]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x1400fd411
mov rcx, qword [rbp]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov rax, qword [rbp + 0xe0]
cmp rax, 0
je 0x1400fd454
mov rcx, qword [rbp + 0xe0]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x1400fd454
mov rcx, qword [rbp + 0xe0]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov rax, qword [rbp + 0x138]
cmp rax, 0
je 0x1400fd4a7
mov rax, qword [rbp + 0x138]
mov rax, qword [rax]
movabs rcx, 0x27b2b329c1f7608c
movabs rdx, 0x67b2b329c1f7608c
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x1400fd4a7
mov rcx, qword [rbp + 0x138]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov ecx, dword [0x1402ae610]
mov eax, dword [0x1402ae614]
mov edx, 0xc315aaca
xor edx, 0x1992ff6b
add ecx, edx
sub ecx, eax
sub ecx, 0xda8755a1
mov eax, ecx
and eax, 0x5f3b259f
or ecx, 0x5f3b259f
add eax, ecx
add eax, 0x4dc7d145
sub eax, 0x874a7d27
sub eax, 0x4dc7d145
mov ecx, 0x33a9477a
xor ecx, 0xcc56b885
mov edx, eax
xor edx, ecx
and edx, 0xdc01e10e
mov r8d, 0xffffffff
xor r8d, 0xdc01e10e
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xd7aac5a5
xor r8d, 0xbab24ab
mov edx, eax
and edx, r8d
or eax, 0xdc01e10e
imul eax, edx
add eax, ecx
mov ecx, 0x4364194b
xor ecx, 0xe331d993
cmp eax, ecx
ja 0x1400fe3d4
mov rcx, qword [rbp + 0x1a8]
mov eax, dword [0x1402ae618]
mov edx, 0x82f319a3
xor edx, 0x45245315
xor eax, edx
mov r8d, dword [0x1402ae61c]
mov edx, eax
and edx, r8d
shl edx, 1
xor eax, r8d
add eax, edx
xor edx, edx
sub edx, 0x298fc29d
add eax, edx
mov edx, 0xfaedf578
xor edx, 0xec9ae083
and edx, eax
xor edx, 0xffffffff
mov r8d, 0x2b635f4f
xor r8d, 0x3d144ab4
add eax, r8d
add eax, 1
add eax, edx
sub eax, 0x7bc2fc3c
cmp rcx, 0
sete cl
mov byte [rbp - 1], cl
cmp eax, 0xcc94e1d7
ja 0x1400fd53f
mov al, byte [rbp - 1]
test al, 1
jne 0x1400fd6cf
jmp 0x1400fd5c6
mov ecx, dword [0x1402ae620]
mov edx, dword [0x1402ae624]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
imul eax, eax, 0x725ce682
and eax, 0xc9906a0c
mov ecx, 0x55712dbc
xor edx, edx
div ecx
cmp eax, 0xf7b7a8f9
je 0x1400fe3dd
mov rdx, qword [rbp + 0x1a8]
mov r9d, dword [0x1402ae628]
imul r9d, dword [0x1402ae62c]
xor eax, eax
sub eax, 0x601d8704
sub r9d, eax
mov ecx, r9d
xor ecx, 0xffffffff
and ecx, 0xdb1a264c
mov r8d, 0xffffffff
xor r8d, 0xdb1a264c
and r9d, r8d
mov eax, 0xffffffff
xor eax, 0xbc256d3c
and eax, 0xdb1a264c
and r8d, 0xbc256d3c
or ecx, r9d
or eax, r8d
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xc4677a84
or ecx, 0xc4677a84
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
movabs rdx, 0x40af264d3c623210
movabs r8, 0x40af264d3c623210
xor rdx, r8
cmp rcx, rdx
sete cl
mov byte [rbp - 2], cl
cmp eax, 0x30bf7824
je 0x1400fe3dd
mov al, byte [rbp - 2]
test al, 1
jne 0x1400fd6bb
jmp 0x1400fd6cf
mov rcx, qword [rbp + 0x1a8]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov rcx, qword [rbp + 0x260]
xor eax, eax
cmp rcx, 0
mov byte [rbp - 3], al
je 0x1400fe222
mov rcx, qword [rbp + 0x260]
mov rdx, qword [rcx]
movabs rax, 0x3f30d89bd1cc32a9
movabs r8, 0x7f30d89bd1cc32a9
xor rax, r8
and rdx, rax
movabs r8, 0xf605babe5768aa66
movabs rax, 0xf605babe5768aa66
xor r8, rax
xor eax, eax
cmp rdx, r8
mov qword [rbp - 0x10], rcx
mov cl, al
mov byte [rbp - 4], cl
mov byte [rbp - 3], al
je 0x1400fe15e
jmp 0x1400fe222
mov rdx, qword [rbp + 0x2f0]
mov ecx, dword [rbp + 8]
mov rax, qword [0x1402c2f10]
mov qword [rdx], rax
mov rax, qword [0x1402c2f18]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.1400e15ff
mov r10, qword [rbp + 0x300]
mov r8, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x138]
mov rax, qword [rbp + 0xe0]
add rsp, 0x20
xor r9d, r9d
cmp byte [r10], 0
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jne 0x1400fdb57
mov al, byte [rbp + 0x327]
xor ecx, ecx
mov byte [rbp - 0x11], cl
test al, al
je 0x1400fd82c
jmp 0x1400fd7d3
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
mov r9b, byte [rbp - 0x11]
mov r10b, byte [rbp + 0x327]
sub r10b, 1
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
je 0x1400fd97f
jmp 0x1400fdb57
mov rax, qword [rbp + 0x2c0]
mov ecx, dword [rax + 0x20]
mov edx, ecx
not edx
or edx, 0x10
mov eax, ecx
mov ecx, edx
lea ecx, [rax + rcx + 1]
sub rsp, 0x20
call fcn.1400d95e0
mov r9, qword [rbp + 0x300]
mov r8, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x138]
add rsp, 0x20
mov r11b, al
mov rax, qword [rbp + 0xe0]
mov r10b, byte [r9]
xor r9d, r9d
test r11b, r11b
mov r11d, 7
cmovne r11d, r9d
test r10b, r10b
mov r10d, 2
cmove r10d, r11d
mov dword [rbp - 0x18], r10d
mov byte [rbp - 0x12], r9b
test r10d, r10d
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
je 0x1400fdb57
jmp 0x1400fd8d1
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
mov r9b, byte [rbp - 0x12]
mov r10d, dword [rbp - 0x18]
sub r10d, 2
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
je 0x1400fdb57
jmp 0x1400fd927
mov eax, dword [rbp - 0x18]
sub eax, 7
jne 0x1400fe22d
jmp 0x1400fd938
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
mov r9b, 1
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jmp 0x1400fdb57
mov eax, dword [0x1402ae630]
sub eax, dword [0x1402ae634]
mov edx, 0xffffffff
xor edx, 0x41a00f96
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x41a00f96
add eax, edx
sub eax, ecx
imul eax, eax, 0xa34aad5
add eax, 0x4cedd132
cmp eax, 0x93d04972
jbe 0x1400fe3e6
mov rax, qword [rbp + 0x2c0]
mov ecx, dword [0x1402ae638]
mov edx, dword [0x1402ae63c]
or ecx, edx
mov edx, ecx
not edx
or edx, 0xcbe7f90
add ecx, edx
imul ecx, ecx, 0x4ac2c241
add ecx, 0xedfcd857
mov dword [rbp - 0x24], ecx
mov ecx, dword [rax + 0x20]
and ecx, 0x10
sub rsp, 0x20
call fcn.1400d95e0
mov rcx, qword [rbp + 0x300]
add rsp, 0x20
mov r10b, al
mov eax, dword [rbp - 0x24]
mov r8b, byte [rcx]
xor ecx, ecx
mov r9b, cl
test r8b, r8b
sete cl
mov dl, r10b
xor dl, 1
movzx r11d, dl
mov edx, r11d
lea edx, [rdx + rdx*8]
and cl, r10b
and cl, 1
mov byte [rbp - 0x1d], cl
mov ecx, 0x54798b43
xor ecx, 0x54798b41
cmp r8b, r9b
cmove ecx, edx
mov dword [rbp - 0x1c], ecx
cmp eax, 0xd59014b8
jae 0x1400fd9bc
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
mov r9b, byte [rbp - 0x1d]
mov r10d, dword [rbp - 0x1c]
test r10d, r10d
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
je 0x1400fdb57
jmp 0x1400fdaa7
mov eax, dword [rbp - 0x1c]
sub eax, 2
je 0x1400fdb10
jmp 0x1400fdab8
mov eax, dword [rbp - 0x1c]
sub eax, 9
jne 0x1400fe22d
jmp 0x1400fdac9
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
xor r9d, r9d
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jmp 0x1400fdb57
mov rax, qword [rbp + 0xe0]
mov rcx, qword [rbp + 0x138]
mov rdx, qword [rbp + 0x1a8]
mov r8, qword [rbp + 0x260]
xor r9d, r9d
mov byte [rbp + 0x287], r9b
mov qword [rbp + 0x288], r8
mov qword [rbp + 0x290], rdx
mov qword [rbp + 0x298], rcx
mov qword [rbp + 0x2a0], rax
jmp 0x1400fdb57
mov al, byte [rbp + 0x287]
mov rcx, qword [rbp + 0x288]
mov rdx, qword [rbp + 0x290]
mov r8, qword [rbp + 0x298]
mov r9, qword [rbp + 0x2a0]
mov qword [rbp - 0x48], r9
mov qword [rbp - 0x40], r8
mov qword [rbp - 0x38], rdx
mov qword [rbp - 0x30], rcx
mov byte [rbp - 0x25], al
mov eax, dword [0x1402ae640]
xor eax, 0xcb29513c
mov ecx, dword [0x1402ae644]
mov edx, 0xf53fa44
xor edx, 0x787a0389
xor ecx, edx
xor edx, edx
div ecx
mov ecx, 0x1cca8a
xor ecx, 0x5346da93
imul eax, ecx
xor eax, 0x690bc54e
and eax, 0x88a7d775
cmp eax, 0x8aa34e8b
je 0x1400fe3ef
mov rcx, qword [rbp + 0x328]
mov edx, dword [0x1402ae648]
xor edx, 0xab809fc4
mov r8d, dword [0x1402ae64c]
mov eax, r8d
and eax, edx
mov r9d, 0xe22fab08
xor r9d, 0x1dd054f7
xor eax, r9d
add edx, r8d
add edx, 1
add edx, eax
mov r9d, 0xffffffff
xor r9d, 0x4d7b4b78
mov r8d, edx
and r8d, r9d
mov eax, edx
or eax, r9d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, 0x4d7b4b78
or edx, 0x4d7b4b78
imul edx, r8d
add edx, eax
mov r8d, 0xffffffff
xor r8d, 0xa6485443
mov eax, edx
xor eax, r8d
and eax, edx
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0xab419fef
mov r9d, 0xae08854c
xor r9d, 0x5491aa3
mov edx, 0xdb75aaa6
xor edx, 0x248a5559
xor r9d, edx
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0x4c30974
xor r9d, 0xaf82969b
mov r8d, eax
and r8d, r9d
mov r9d, 0x840b00b4
xor r9d, 0x2f4a9f5b
or eax, r9d
imul eax, r8d
add eax, edx
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x58], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x49], cl
cmp eax, 0x3b71e1c8
jae 0x1400fe3ef
mov al, byte [rbp - 0x49]
test al, 1
jne 0x1400fdd35
jmp 0x1400fdcd9
mov rax, qword [rbp - 0x58]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
movabs rcx, 0xd1b59be6d6caa07
movabs rdx, 0xd1b59be6d6caa07
xor rcx, rdx
cmp rax, rcx
jne 0x1400fdd35
mov rcx, qword [rbp - 0x58]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov eax, dword [0x1402ae650]
xor eax, 0x601442cb
xor edx, edx
div dword [0x1402ae654]
mov ecx, eax
mov eax, 0xffffffff
xor eax, 0xbc5110cd
add ecx, eax
add ecx, 1
add ecx, 0x89186317
mov edx, 0xffffffff
xor edx, 0x7c0ffe90
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0x1a7de128
je 0x1400fe3f8
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1402ae658]
or eax, dword [0x1402ae65c]
mov r8d, 0x8e83aa5f
xor r8d, 0x17601a77
xor edx, edx
div r8d
mov edx, eax
and edx, 0x1083ac4
xor eax, 0x1083ac4
or edx, eax
mov r8d, 0x5e3ff774
xor r8d, 0xc5b7c2f2
mov eax, edx
and eax, r8d
or edx, 0x9b883586
add eax, edx
cmp rcx, 0
sete cl
mov byte [rbp - 0x59], cl
cmp eax, 0x615e93fa
jbe 0x1400fe3f8
mov al, byte [rbp - 0x59]
test al, 1
jne 0x1400fdf06
jmp 0x1400fddeb
mov eax, dword [0x1402ae660]
or eax, dword [0x1402ae664]
add eax, 0x6926c662
add eax, 0x433f2965
mov r8d, 0xffffffff
xor r8d, 0xc18875af
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xc18875af
or eax, 0xc18875af
imul eax, edx
add eax, ecx
cmp eax, 0x5a630558
ja 0x1400fe401
mov rdx, qword [rbp - 0x48]
mov eax, dword [0x1402ae668]
xor eax, 0xb7e3061d
add eax, dword [0x1402ae66c]
mov ecx, eax
xor ecx, 0xffffffff
mov r8d, 0x4d31aaa9
xor r8d, 0xefbf0442
and r8d, ecx
mov r9d, 0xffffffff
xor r9d, 0xa28eaeeb
mov ecx, eax
and ecx, r9d
imul ecx, r8d
mov r9d, 0x17b881c4
xor r9d, 0xb5362f2f
mov r8d, eax
and r8d, r9d
mov r9d, 0x614ad08f
xor r9d, 0xc3c47e64
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, 0x66270306
xor ecx, 0x1d4e3b42
and ecx, eax
xor ecx, 0xffffffff
add eax, 0x7b693844
add eax, 1
add eax, ecx
sub eax, 0xa27ad038
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rbp - 0x5a], cl
cmp eax, 0xf66f3b45
je 0x1400fde3b
mov al, byte [rbp - 0x5a]
test al, 1
jne 0x1400fdef5
jmp 0x1400fdf06
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov rax, qword [rbp - 0x40]
cmp rax, 0
je 0x1400fe0bd
mov rax, qword [rbp - 0x40]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
movabs rdx, 0xa89b6a7cd6f5008b
movabs r8, 0x2afc93516b32828f
xor rdx, r8
movabs r8, 0x4fbbb44239098468
movabs r9, 0xb0444bbdc6f67b97
xor r8, r9
xor rdx, r8
or rax, rcx
movabs rcx, 0x1fe9693f95926fa0
movabs r8, 0x9d8e90122855eda4
xor rcx, r8
or rcx, rdx
movabs rdx, 0x8a037f6c90b354b4
movabs r8, 0x75fc80936f4cab4b
xor rdx, r8
xor rax, rdx
and rax, rcx
movabs rcx, 0xe2d3ca2924878f9e
movabs rdx, 0xe2d3ca2924878f9e
xor rcx, rdx
cmp rax, rcx
jne 0x1400fe0bd
mov eax, dword [0x1402ae670]
mov ecx, 0x18fd6aeb
xor ecx, 0xf0a18026
xor eax, ecx
xor edx, edx
div dword [0x1402ae674]
sub eax, 0x43281ffb
add eax, 0x9fa89a7b
add eax, 0x43281ffb
and eax, 0x7701f6de
sub eax, 0x7db4c006
sub eax, 0xf00030ce
add eax, 0x7db4c006
mov ecx, 0xb1b7e304
xor ecx, 0xef881806
cmp eax, ecx
ja 0x1400fe40a
mov rcx, qword [rbp - 0x40]
mov eax, dword [0x1402ae678]
xor eax, 0x7e83951b
mov r9d, dword [0x1402ae67c]
mov edx, eax
xor edx, 0xffffffff
mov r8d, r9d
and r8d, edx
mov edx, 0xaa8c84ee
xor edx, 0x55737b11
mov r10d, r9d
xor r10d, edx
mov edx, eax
and edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov r8d, 0xbd19e8b
xor r8d, 0xa33bf1b
xor edx, edx
div r8d
mov r8d, 0xffffffff
xor r8d, 0x4eb3248c
mov edx, eax
and edx, r8d
mov r9d, 0x3fbadf7b
xor r9d, 0x7109fbf7
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
and eax, 0xecfd1480
mov dword [rbp - 0x60], eax
sub rsp, 0x20
call fcn.14001a7c0
mov eax, dword [rbp - 0x60]
add rsp, 0x20
cmp eax, 0x5b10a2f8
ja 0x1400fe40a
jmp 0x1400fe0bd
mov rax, qword [rbp - 0x38]
cmp rax, 0
je 0x1400fe10d
mov rcx, qword [rbp - 0x38]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xa2d8284bab094df6
movabs rdx, 0xa2d8284bab094df6
xor rcx, rdx
cmp rax, rcx
jne 0x1400fe10d
mov rcx, qword [rbp - 0x38]
sub rsp, 0x20
call fcn.14001a7c0
add rsp, 0x20
mov al, byte [rbp - 0x25]
mov rcx, qword [rbp - 0x30]
cmp rcx, 0
mov byte [rbp - 3], al
je 0x1400fe222
mov al, byte [rbp - 0x25]
mov rcx, qword [rbp - 0x30]
mov r8, qword [rcx]
mov r9, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor r9, rdx
mov rdx, r8
xor rdx, r9
and rdx, r8
cmp rdx, 0
mov qword [rbp - 0x10], rcx
mov cl, al
mov byte [rbp - 4], cl
mov byte [rbp - 3], al
jne 0x1400fe222
mov rax, qword [rbp - 0x10]
mov cl, byte [rbp - 4]
mov byte [rbp - 0x69], cl
mov qword [rbp - 0x68], rax
mov eax, dword [0x1402ae680]
add eax, dword [0x1402ae684]
add eax, 0xae09fd74
mov ecx, 0x72f61416
xor ecx, 0xb5bfa34d
xor edx, edx
div ecx
mov ecx, 0x6b372dfa
xor ecx, 0xdb7132c5
xor edx, edx
div ecx
cmp eax, 0xbf88171
je 0x1400fe413
mov rcx, qword [rbp - 0x68]
mov eax, dword [0x1402ae688]
and eax, dword [0x1402ae68c]
sub eax, 0xe1e79a30
mov r8d, 0xc07c717
xor r8d, 0xb41bbd4d
mov edx, eax
xor edx, r8d
mov r8d, 0x78bd8ee2
xor r8d, 0x8742711d
xor edx, r8d
and edx, 0xb81c7a5a
shl edx, 1
sub edx, 0xb81c7a5a
sub eax, edx
mov r8d, 0xf5021fd2
xor edx, edx
div r8d
mov dword [rbp - 0x70], eax
sub rsp, 0x20
call fcn.14001a7c0
mov eax, dword [rbp - 0x70]
add rsp, 0x20
cmp eax, 0xb2d8ee96
jae 0x1400fe1a6
mov al, byte [rbp - 0x69]
mov byte [rbp - 3], al
jmp 0x1400fe222
mov al, byte [rbp - 3]
cmp al, 0
setne al
mov byte [rbp - 0x71], al
mov al, byte [rbp - 0x71]
mov byte [rbp - 0x72], al
mov eax, dword [0x1402ae690]
mov ecx, 0xcb97f1e8
xor ecx, 0x863f60e
xor eax, ecx
mov edx, dword [0x1402ae694]
mov r8d, eax
xor r8d, edx
xor r8d, 0xffffffff
mov ecx, edx
and ecx, r8d
shl ecx, 1
sub ecx, edx
sub eax, ecx
mov edx, 0xb7995db2
xor edx, 0xb7995db3
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x7ed3aee9
add eax, ecx
and eax, 0x8d5a36e4
xor eax, 0xe499a323
mov ecx, 0x809c4b87
xor ecx, 0x82e000ac
cmp eax, ecx
je 0x1400fe41c
mov eax, dword [0x1402ae698]
sub eax, dword [0x1402ae69c]
xor eax, 0xd4bd88c5
mov r8d, 0xffffffff
xor r8d, 0x2123a004
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x8b22ba67
xor r8d, 0x74dd4598
xor ecx, r8d
imul ecx, edx
mov r8d, 0xa9289d27
xor r8d, 0x880b3d23
mov edx, eax
and edx, r8d
or eax, 0x2123a004
imul eax, edx
add eax, ecx
mov ecx, 0x1b7f5ae6
xor ecx, 0x8c1b6ae8
xor edx, edx
div ecx
cmp eax, 0x3f3cd155
je 0x1400fe41c
mov al, byte [rbp - 0x72]
and al, 1
movzx eax, al
movaps xmm6, xmmword [rbp + 0x330]
movaps xmm7, xmmword [rbp + 0x340]
movaps xmm8, xmmword [rbp + 0x350]
lea rsp, [rbp + 0x360]
pop rdi
pop rsi
pop rbp
ret
adc dword [rbx + 0x23], ebp
fsub st(1), st(0)
dec ah
invalid
pop rdx
xchg dword [rbp - 0x49], ebp
jmp 0x1400fb398
or dword [rcx - 0x2f1691df], ecx
sar bh, cl
invalid
cmp al, 0xa5
and dword [rsi - 0x17], 0xffffd3bc
adc dword [rbx + 0x64], ebx
push rax
jmp 0x1400fb971
outsd dx, dword [rsi]
test dword [rax], ecx
sti
jmp 0x1400fba4d
invalid
xchg esi, eax
sub byte [rsi], cl
popfq
jmp 0x1400fbe63
push 0xffffffffe9b2ac98
xor bl, ah
invalid
xlatb
invalid
loope 0x1400fe3a5
and dword [rcx + rbp*8], edi
stosd dword [rdi], eax
invalid
and edi, ecx
int1
xchg ecx, eax
jmp 0x1400fc458
insd dword [rdi], dx
fisttp word [rdx - 0x1c96166b]
invalid
invalid
cmp al, 0xe7
mov edx, 0xffea99e9
call [rdi]
invalid
invalid
test byte [0x178f9cd09], cl
in al, dx
invalid
invalid
jg 0x1400fe444
rcr byte [rcx + rbp*8 - 0xe9e], 0xb2
invalid
mov dl, 0x44
invalid
push 0xfffffffffffffff2
ret 0xe9c5
mov dword [rsi], ecx
stc
fucomi st(1)
fincstp
invalid
fcomp dword [rdi + 0x7ae962b2]
stc
invalid
mov word [rdi + rdx*4 - 0x5ce16b5], fs
invalid
sub ebx, dword [rsi - 0x31675b1]
sti
invalid
invalid
invalid
mov qword [rsp + 0x38], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x40], rax
call fcn.14001dfcd
lea rcx, [rsp + 0x38]
mov edx, 1
call fcn.1400fafd0
mov rcx, qword [rsp + 0x20]
mov byte [rsp + 0x2f], al
mov rax, qword [rcx + 8]
mov qword [rsp + 0x30], rax
cmp rax, 0
je 0x1400fe4ce
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
movabs rcx, 0xc76ce1d512664052
movabs rdx, 0x876ce1d512664052
xor rcx, rdx
and rax, rcx
movabs rcx, 0xf49e09e599025e5f
movabs rdx, 0xf49e09e599025e5f
xor rcx, rdx
cmp rax, rcx
jne 0x1400fe4ce
mov rcx, qword [rsp + 0x30]
call fcn.14001a7c0
mov al, byte [rsp + 0x2f]
and al, 1
movzx eax, al
add rsp, 0x48
ret