Function at 0x140055350
Capabilities:
Encode data using base64
Encode data using xor

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x448
mov qword [rsp + 0x428], r8
mov qword [rsp + 0x410], rdx
mov qword [rsp + 0x418], rcx
mov qword [rsp + 0x420], rcx
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
call fcn.14000eaf8
mov r8, qword [rsp + 0x428]
add rax, 0x60
mov qword [rsp + 0x430], rax
movabs rax, 0xb1282617933fd5a4
movabs rcx, 0xb1282617933fd5a4
xor rax, rcx
cmp r8, rax
jge 0x1400553dd
mov rcx, qword [rsp + 0x428]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400599b8
mov rdx, qword [rsp + 0x428]
lea rcx, [rsp + 0x438]
call fcn.140031020
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x428]
mov rdx, qword [rsp + 0x438]
mov qword [rcx], rdx
mov rdx, qword [rsp + 0x440]
mov qword [rcx + 8], rdx
cmp rax, 0
je 0x1400599b8
mov ecx, dword [0x1402aa450]
mov edx, dword [0x1402aa454]
mov eax, ecx
and eax, edx
shl eax, 1
add ecx, edx
sub ecx, eax
mov eax, ecx
and eax, 0xf029bbd4
xor ecx, 0xf029bbd4
or eax, ecx
xor eax, 0x610f52f5
mov ecx, 0x14dc4c8a
xor ecx, 0x1dd59181
xor eax, ecx
mov ecx, 0xbab5a616
xor ecx, 0x9fae27e5
cmp eax, ecx
jbe 0x140059b2f
mov rcx, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x428]
mov eax, dword [0x1402aa458]
mov r8d, dword [0x1402aa45c]
and eax, r8d
add eax, 0x94547441
or eax, 0x48bf6a70
mov r8, rdx
add r8, 0xfffffffffffffffa
mov qword [rsp + 0x3b8], r8
xor r8, rdx
sets r8b
mov r9, rdx
sub r9, 6
setge r9b
xor r8b, r9b
not r8b
and r8b, r9b
mov byte [rsp + 0x3c7], r8b
mov r8, rdx
add r8, 0xfffffffffffffffb
mov qword [rsp + 0x3c8], r8
xor r8, rdx
sets r9b
mov r8, rdx
sub r8, 5
setge r8b
and r8b, r9b
mov byte [rsp + 0x3d7], r8b
mov r9, rdx
add r9, 0xfffffffffffffffc
mov qword [rsp + 0x3d8], r9
not r9
mov r8, r9
and r8, rdx
or r9, rdx
not r9
or r8, r9
sets r9b
mov r8, rdx
sub r8, 4
setge r8b
and r8b, r9b
mov byte [rsp + 0x3e7], r8b
mov r8, rdx
add r8, 0xfffffffffffffffd
mov qword [rsp + 0x3e8], r8
movabs r10, 0x6626871788ad5ba3
xor r8, r10
mov r9, rdx
xor r9, r10
xor r8, r9
sets r10b
mov r8, rdx
sub r8, 3
setge r8b
setl r9b
or r9b, r10b
add r8b, r9b
inc r8b
mov byte [rsp + 0x3f7], r8b
mov r9, rdx
and r9, 0xfffffffffffffffe
mov r8, rdx
or r8, 0xfffffffffffffffe
add r9, r8
mov qword [rsp + 0x3f8], r9
mov r8, r9
and r8, r8
xor r8, 0xffffffffffffffff
and r8, rdx
movabs r10, 0x133e59d74a8d6474
movabs r11, 0xecc1a628b5729b8b
xor r10, r11
xor r8, r10
mov r10, rdx
and r10, r10
xor r10, 0xffffffffffffffff
movabs r11, 0xb0ba4e4d14825ef0
movabs rsi, 0x4f45b1b2eb7da10f
xor r11, rsi
xor r9, r11
xor r10, 0xffffffffffffffff
or r9, r10
and r8, r9
xor r8, 0xffffffffffffffff
cmp r8, 0
setl r8b
movabs r9, 0xdaa18cb0ead6109b
movabs r10, 0xdaa18cb0ead6109a
xor r9, r10
cmp rdx, r9
setg dl
and dl, r8b
mov byte [rsp + 0x407], dl
add rcx, 8
mov qword [rsp + 0x408], rcx
cmp eax, 0xc7b58442
jb 0x140059b2f
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x3a8], rcx
mov qword [rsp + 0x3b0], rax
jmp 0x14005564c
mov rax, qword [rsp + 0x410]
mov rcx, qword [rsp + 0x3a8]
mov rdx, qword [rsp + 0x3b0]
mov qword [rsp + 0x390], rdx
mov qword [rsp + 0x398], rcx
mov al, byte [rax + rcx]
mov byte [rsp + 0x3a7], al
cmp al, 0xff
jle 0x1400556b0
mov rax, qword [rsp + 0x398]
mov cl, byte [rsp + 0x3a7]
movzx ecx, cl
add rax, 1
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jmp 0x140056ec1
mov rax, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x428]
cmp rax, rcx
jl 0x140055717
mov rcx, qword [rsp + 0x398]
mov rdx, qword [rsp + 0x428]
movabs rax, 0x1ed2cd8cbfe8bf5f
add rdx, rax
movabs rax, 0x9ee56ed3c581af88
movabs r8, 0x611a912c3a7e5077
xor rax, r8
add rdx, rax
movabs rax, 0x1ed2cd8cbfe8bf5f
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov al, byte [rsp + 0x3a7]
movzx eax, al
mov qword [rsp + 0x378], rax
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
xor rcx, 0xe0
movabs rdx, 0xbc27c156c84002f5
movabs r8, 0xbc27c156c8400215
xor rdx, r8
movabs r8, 0xb1d1a65da249bec3
movabs r9, 0x4e2e59a25db6413c
xor r8, r9
xor rdx, r8
and rcx, rdx
or rax, rcx
xor rax, 0xffffffffffffffff
cmp rax, 0xc0
jne 0x140055a60
mov al, byte [rsp + 0x407]
test al, 1
jne 0x140055799
jmp 0x1400557a3
call fcn.14000ee80
jmp 0x1400599b8
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3f8]
movabs rcx, 0x5f3b259f658e2d1d
movabs rax, 0x5f3b259f658e2d1c
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rsp + 0x370], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jg 0x140056ec1
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x428]
cmp rax, rcx
jl 0x14005582c
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x428]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov eax, dword [0x1402aa460]
xor eax, 0x21b8cda9
mov edx, dword [0x1402aa464]
mov ecx, 0x6c16644f
xor ecx, 0xf8a04abe
xor edx, ecx
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov r11d, eax
and r11d, 0xa82b2742
mov ecx, 0xa21d7ce8
xor ecx, 0x5de28317
xor r11d, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0xa82b2742
or eax, ecx
and r11d, eax
xor r11d, 0xffffffff
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xb7450329
mov edx, 0x30bf7824
xor edx, 0x347f7a
mov eax, 0xaa449a67
xor eax, 0x55bb6598
xor edx, eax
mov eax, ecx
and eax, 0x308b075e
and r11d, edx
mov r9d, r8d
and r9d, 0x308b075e
mov r10d, 0xc718445f
xor r10d, 0x705d4776
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0xa8792b88
xor r8d, 0x5786d477
xor ecx, r8d
or edx, 0x308b075e
and ecx, edx
or eax, ecx
mov edx, 0x631cef89
xor edx, 0x9ce31076
mov ecx, eax
xor ecx, edx
and ecx, 0xded9c6e7
mov edx, 0x6551574f
xor edx, 0xbb8891a8
mov r8d, 0xd59014b8
xor r8d, 0x2a6feb47
xor edx, r8d
and eax, edx
sub eax, ecx
cmp eax, 0x8d86b26b
je 0x140059b38
mov rcx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x410]
mov r9, qword [rsp + 0x370]
mov eax, dword [0x1402aa468]
mov r11d, dword [0x1402aa46c]
xor r11d, 0xbf82a875
mov edx, eax
xor edx, 0xffffffff
mov r10d, r11d
and r10d, edx
mov esi, r11d
xor esi, 0xffffffff
mov edx, eax
and edx, esi
imul edx, r10d
mov r10d, eax
and r10d, r11d
or eax, r11d
imul eax, r10d
add eax, edx
mov r10d, 0xd482d5f3
xor edx, edx
div r10d
mov dl, byte [rsp + 0x3a7]
mov r10d, eax
mov eax, 0x3b71e1c8
xor eax, 0xd6eb4afa
mov r11d, r10d
xor r11d, eax
xor r11d, 0xffffffff
mov eax, 0xa0f91d94
xor eax, 0x4d63b6a6
and eax, r11d
shl eax, 1
sub eax, 0xed9aab32
sub r10d, eax
mov eax, r10d
xor eax, 0xffffffff
and eax, 0x976511eb
mov r11d, 0xffffffff
xor r11d, 0x976511eb
and r10d, r11d
or eax, r10d
mov r10b, dl
xor r10b, 0x1f
xor r10b, 0xff
or dl, 0x1f
and dl, r10b
movzx edx, dl
shl edx, 6
mov r8b, byte [r8 + r9]
mov r9b, r8b
xor r9b, 0x3f
mov r10b, 0x1a
xor r10b, 0xe5
xor r9b, r10b
or r8b, 0x3f
and r8b, r9b
movzx r8d, r8b
or edx, r8d
mov dword [rsp + 0x364], edx
add rcx, 2
mov qword [rsp + 0x368], rcx
cmp eax, 0x8c26b2ac
jae 0x140059b38
mov rax, qword [rsp + 0x368]
mov ecx, dword [rsp + 0x364]
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jmp 0x140056ec1
mov eax, dword [0x1402aa470]
imul eax, dword [0x1402aa474]
mov ecx, 0x24a9b711
xor ecx, 0x6d55dc74
xor edx, edx
div ecx
mov ecx, 0x8265565c
xor ecx, 0x151c7e1a
imul eax, ecx
sub eax, 0x77fa0692
cmp eax, 0x7f1964f1
jb 0x140059b41
mov rcx, qword [rsp + 0x378]
mov eax, dword [0x1402aa478]
or eax, dword [0x1402aa47c]
mov r8d, 0xfa14a55f
xor edx, edx
div r8d
mov edx, eax
xor edx, 0x6e357e35
xor edx, 0xffffffff
and edx, 0x6e357e35
shl edx, 1
mov r8d, 0xde16693e
xor r8d, 0xb023170b
sub edx, r8d
sub eax, edx
imul eax, eax, 0x1d1536ee
movabs rdx, 0x7701f6dea5632e72
movabs r8, 0x7701f6dea5632e82
xor rdx, r8
and rcx, rdx
cmp rcx, 0xe0
sete cl
mov byte [rsp + 0x363], cl
cmp eax, 0xb646f1bf
jb 0x140055a9a
mov al, byte [rsp + 0x363]
test al, 1
jne 0x140055b2f
jmp 0x140055d1b
mov al, byte [rsp + 0x3f7]
test al, 1
jne 0x140055b43
jmp 0x140055b4d
call fcn.14000ee80
jmp 0x1400599b8
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3e8]
mov rax, rdx
and rax, 1
movabs r9, 0xfc6b3c6eaf3ce61f
movabs rcx, 0xfc6b3c6eaf3ce61e
xor r9, rcx
mov rcx, rdx
or rcx, r9
add rax, rcx
mov qword [rsp + 0x358], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jg 0x140056ec1
mov rax, qword [rsp + 0x358]
mov rcx, qword [rsp + 0x428]
cmp rax, rcx
jl 0x140055be0
mov rcx, qword [rsp + 0x358]
mov rdx, qword [rsp + 0x428]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
movabs rdx, 0xae09fd74825915e9
movabs r8, 0xae608ea5d884e52e
xor rdx, r8
add rax, rdx
movabs rdx, 0xc749b75c4a539c3a
movabs r8, 0xc749b75c4a539c38
xor rdx, r8
add rax, rdx
movabs rdx, 0x6973d15addf0c7
sub rax, rdx
mov qword [rsp + 0x350], rax
cmp rax, rcx
jl 0x140055c60
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x428]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x398]
mov rdx, qword [rsp + 0x410]
mov r8, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x358]
mov r10b, byte [rsp + 0x3a7]
mov r11b, 0xff
xor r11b, 0xf
mov r9b, r10b
xor r9b, r11b
and r9b, r10b
movzx r10d, r9b
shl r10d, 0xc
mov cl, byte [rdx + rcx]
and cl, 0x3f
movzx r9d, cl
shl r9d, 6
mov ecx, r9d
xor ecx, 0xffffffff
mov r11d, r10d
xor r11d, 0xffffffff
and ecx, r11d
or r9d, r10d
xor r9d, 0xffffffff
or ecx, r9d
xor ecx, 0xffffffff
mov r8b, byte [rdx + r8]
mov dl, r8b
xor dl, 0xff
mov r9b, 0xff
xor r9b, 0x3f
or dl, r9b
mov r9b, 0xff
xor r9b, 0xc0
and r8b, r9b
xor r8b, 0xff
mov r9b, 0xfa
xor r9b, 5
xor dl, r9b
xor r8b, 0xff
or dl, r8b
movzx edx, dl
or ecx, edx
add rax, 3
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jmp 0x140056ec1
mov rax, qword [rsp + 0x378]
movabs rcx, 0x4e20429170985dcc
movabs rdx, 0x4e20429170985d34
xor rcx, rdx
and rax, rcx
movabs rcx, 0x6d3d6128de467808
movabs rdx, 0x6d3d6128de4678f8
xor rcx, rdx
cmp rax, rcx
jne 0x140056038
mov eax, dword [0x1402aa480]
and eax, dword [0x1402aa484]
mov ecx, 0x1843768a
xor ecx, 0x3859b218
xor edx, edx
div ecx
mov ecx, 0x35e03eee
xor edx, edx
div ecx
mov ecx, 0xdbe144ad
xor ecx, 0xc4a95eb5
xor eax, ecx
mov ecx, 0x1244e69e
xor ecx, 0x37f753b9
cmp eax, ecx
ja 0x140059b4a
mov eax, dword [0x1402aa488]
xor eax, 0xbe22d04c
xor edx, edx
div dword [0x1402aa48c]
add eax, 0x25030570
sub eax, 0xd51a4f71
mov ecx, 0x6ca1bdb8
xor ecx, 0x49a2b8c8
sub eax, ecx
xor eax, 0x93e9e6c8
mov ecx, 0xa588b4f1
xor edx, edx
div ecx
cmp eax, 0xbe84f2b9
jae 0x140055da1
mov al, byte [rsp + 0x3e7]
test al, 1
jne 0x140055df8
jmp 0x140055e02
call fcn.14000ee80
jmp 0x1400599b8
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3d8]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x348], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jg 0x140056ec1
mov rax, qword [rsp + 0x348]
mov rcx, qword [rsp + 0x428]
cmp rax, rcx
jl 0x140055e75
mov rcx, qword [rsp + 0x348]
mov rdx, qword [rsp + 0x428]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
movabs rdx, 0xf0440dc0b39fbcb
movabs r8, 0xf0440dc0b39fbc9
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x340], rax
cmp rax, rcx
jl 0x140055ece
mov rcx, qword [rsp + 0x340]
mov rdx, qword [rsp + 0x428]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
add rax, 3
mov qword [rsp + 0x338], rax
cmp rax, rcx
jl 0x140055f11
mov rcx, qword [rsp + 0x338]
mov rdx, qword [rsp + 0x428]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x398]
mov rdx, qword [rsp + 0x410]
mov r8, qword [rsp + 0x338]
mov rcx, qword [rsp + 0x340]
mov r9, qword [rsp + 0x348]
mov r10b, byte [rsp + 0x3a7]
mov r11b, r10b
xor r11b, 7
xor r11b, 0xff
mov bl, 0xc1
xor bl, 0xc6
or r10b, bl
and r10b, r11b
movzx r10d, r10b
shl r10d, 0x12
mov r9b, byte [rdx + r9]
mov bl, 0x2d
xor bl, 0x12
mov r11b, r9b
xor r11b, bl
xor r11b, 0xff
or r9b, 0x3f
and r9b, r11b
movzx r9d, r9b
shl r9d, 0xc
or r9d, r10d
mov cl, byte [rdx + rcx]
mov r10b, cl
add r10b, 1
xor cl, 0xff
mov r11b, 0x75
xor r11b, 0x4a
or cl, r11b
add cl, r10b
movzx r10d, cl
shl r10d, 6
mov ecx, r9d
or ecx, r10d
xor ecx, 0xffffffff
or r9d, r10d
xor r9d, 0xffffffff
or ecx, r9d
xor ecx, 0xffffffff
mov dl, byte [rdx + r8]
mov r8b, dl
xor r8b, 0x3f
xor r8b, 0xff
or dl, 0x3f
and dl, r8b
movzx edx, dl
or ecx, edx
movabs rdx, 0x44a5653dd81d5ed
movabs r8, 0x709a10880871d70e
xor rdx, r8
add rax, rdx
movabs rdx, 0x559b7066bcfe47fb
movabs r8, 0x559b7066bcfe47ff
xor rdx, r8
add rax, rdx
movabs rdx, 0xa2540c6104665d2b
movabs r8, 0xd6844abad1965fc8
xor rdx, r8
sub rax, rdx
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jmp 0x140056ec1
mov ecx, dword [0x1402aa490]
mov edx, dword [0x1402aa494]
mov r8d, 0x313c6df6
xor r8d, 0xcec39209
mov eax, ecx
xor eax, r8d
mov r8d, ecx
xor r8d, 0xffffffff
or eax, r8d
and eax, edx
xor eax, 0xffffffff
and edx, edx
mov r8d, 0x5ee9b7da
xor r8d, 0xa1164825
xor edx, r8d
mov r8d, 0x8e0793fa
xor r8d, 0x71f86c05
xor ecx, r8d
mov r8d, 0x65fd5bee
xor r8d, 0x9a02a411
xor edx, r8d
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, eax
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, 0xd3380140
xor eax, 0x5883bbac
mov edx, 0x5a69923
xor edx, 0x8e1d23cf
and eax, edx
xor eax, 0xffffffff
mov edx, 0x4da20f04
xor edx, 0xb25df0fb
xor ecx, edx
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x1ec1b88c
xor edx, 0xc0cce9a0
mov r8d, 0x3b9b2ed2
xor r8d, 0xc464d12d
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xde0d512c
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
sub eax, 0xe54e39d3
mov ecx, 0x890ab5d8
xor ecx, 0xc253913c
cmp eax, ecx
je 0x140059b53
mov rcx, qword [rsp + 0x378]
mov eax, dword [0x1402aa498]
mov r8d, dword [0x1402aa49c]
mov edx, 0xca6d2281
xor edx, 0x16c44fc6
xor r8d, edx
xor edx, edx
div r8d
imul edx, eax, 0x5761d72
mov r8d, 0xf6c088f8
xor r8d, 0x93f7707
mov eax, edx
xor eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x109f7600
and eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x109f7600
and edx, r8d
or eax, edx
xor eax, 0xffffffff
or eax, 0x39eb815f
and rcx, 0xfc
cmp rcx, 0xf8
sete cl
mov byte [rsp + 0x337], cl
cmp eax, 0x967f3b03
ja 0x140056123
mov al, byte [rsp + 0x337]
test al, 1
jne 0x1400561c7
jmp 0x1400567b1
mov ecx, dword [0x1402aa4a0]
mov edx, dword [0x1402aa4a4]
mov eax, ecx
xor eax, edx
mov r8d, 0xd818e066
xor r8d, 0x27e71f99
xor eax, r8d
or ecx, edx
and ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x55bd002f
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, 0x55bd002f
mov r8d, 0xbe468e72
xor r8d, 0xebfb8e5d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x249f350b
mov edx, 0x9e84cb03
xor edx, 0xba1bfe08
xor ecx, edx
or eax, ecx
or eax, 0x8bd52820
cmp eax, 0x5d2d6c0b
je 0x140059b5c
mov ecx, dword [0x1402aa4a8]
xor ecx, 0xd9f51b7b
mov eax, dword [0x1402aa4ac]
sub ecx, 0xa6a9916f
add ecx, eax
add ecx, 0xa6a9916f
mov eax, ecx
and eax, 0x243c9450
mov edx, 0x40bf2bd1
xor edx, 0x6483bf81
or ecx, edx
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0xf01e20d6
mov r8d, 0xffffffff
xor r8d, 0xf01e20d6
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xf01e20d6
or eax, 0xf01e20d6
imul eax, edx
add eax, ecx
add eax, 0xa07fff32
cmp eax, 0x45a8d564
jae 0x14005624b
mov al, byte [rsp + 0x3d7]
test al, 1
jne 0x1400562d7
jmp 0x1400562e1
call fcn.14000ee80
jmp 0x1400599b8
mov rdx, qword [rsp + 0x398]
mov r8, qword [rsp + 0x3c8]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x328], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jg 0x140056ec1
mov rax, qword [rsp + 0x328]
mov rcx, qword [rsp + 0x428]
cmp rax, rcx
jl 0x140056354
mov rcx, qword [rsp + 0x328]
mov rdx, qword [rsp + 0x428]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
movabs rdx, 0xcfe656289028c521
add rax, rdx
add rax, 2
movabs rdx, 0xcfe656289028c521
sub rax, rdx
mov qword [rsp + 0x320], rax
cmp rax, rcx
jl 0x1400563ec
mov rcx, qword [rsp + 0x320]
mov rdx, qword [rsp + 0x428]
mov rax, rdx
and rax, 0xffffffffffffffff
movabs r8, 0x377f1ce86de8e0d
movabs r9, 0x377f1ce86de8e0f
xor r8, r9
imul rax, r8
movabs r8, 0x1d6e69acd4398ed4
movabs r9, 0xe29196532bc6712b
xor r8, r9
xor rdx, r8
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
mov rdx, rax
and rdx, 3
shl rdx, 1
xor rax, 3
add rax, rdx
mov qword [rsp + 0x318], rax
cmp rax, rcx
jl 0x14005657c
mov eax, dword [0x1402aa4b0]
xor edx, edx
div dword [0x1402aa4b4]
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xa0b4ba81
xor edx, 0x5f4b457e
xor eax, edx
or ecx, eax
mov eax, 0x2604d2f9
and eax, 0x2604d2f9
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
or ecx, eax
mov eax, ecx
and eax, eax
mov edx, 0x89bd27f2
xor edx, 0x7642d80d
xor eax, edx
mov edx, 0x99d525f2
xor edx, 0x662ada0d
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x2c8b7f0d
or eax, edx
mov edx, 0x2c8b7f0d
and edx, 0x2c8b7f0d
xor edx, 0xffffffff
xor ecx, 0xffffffff
xor edx, 0xffffffff
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x483e2697
xor edx, edx
div ecx
mov ecx, 0xe9937035
xor ecx, 0xc1b6503f
cmp eax, ecx
ja 0x140059b65
mov rcx, qword [rsp + 0x318]
mov eax, dword [0x1402aa4b8]
mov r8d, dword [0x1402aa4bc]
mov edx, eax
xor edx, r8d
xor r8d, 0xffffffff
and eax, r8d
shl eax, 1
sub eax, edx
sub eax, 0xe0690de9
sub eax, 0xde6df5d2
mov edx, 0xb3f99614
xor edx, 0x53909bfd
add eax, edx
add eax, 0x39d899a6
sub eax, 0xc6d05fda
sub eax, 0x39d899a6
mov r8d, 0x6d936b0e
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x428]
mov dword [rsp + 0x314], eax
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs r8, 0x4387ef418650d0ee
movabs r9, 0x4387ef418650d0ee
xor r8, r9
movabs r9, 0x1b0f35f6da8755a1
movabs r10, 0x1b0f35f6da8755a0
xor r9, r10
sub r8, r9
sub rax, r8
sub rdx, rax
call fcn.140025e55
mov eax, dword [rsp + 0x314]
cmp eax, 0x3147fcaf
je 0x1400564b8
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
movabs rdx, 0xff071a6e8bac1875
movabs r8, 0xff071a6e8bac1871
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x308], rax
cmp rax, rcx
jl 0x1400565ef
mov rcx, qword [rsp + 0x308]
mov rdx, qword [rsp + 0x428]
movabs rax, 0x65fd4621ac9bcdd
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x65fd4621ac9bcdd
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x398]
mov rdx, qword [rsp + 0x410]
mov r8, qword [rsp + 0x308]
mov rcx, qword [rsp + 0x328]
mov r9b, byte [rsp + 0x3a7]
and r9b, 3
movzx r10d, r9b
shl r10d, 0x18
mov cl, byte [rdx + rcx]
mov r9b, 0x61
xor r9b, 0x5e
and cl, r9b
movzx r9d, cl
mov ecx, 0x5df98b2e
xor ecx, 0x5df98b3c
shl r9d, cl
mov rcx, qword [rsp + 0x320]
mov ebx, r9d
and ebx, r10d
xor r9d, r10d
or ebx, r9d
mov r9b, byte [rdx + rcx]
mov r10b, 0xff
xor r10b, 0x3f
mov cl, r9b
xor cl, r10b
and cl, r9b
movzx r11d, cl
mov ecx, 0xad1d1f85
xor ecx, 0xad1d1f89
shl r11d, cl
mov rcx, qword [rsp + 0x318]
mov r10d, r11d
xor r10d, 0xffffffff
mov r9d, ebx
and r9d, r10d
mov r10d, ebx
xor r10d, r11d
add ebx, r10d
sub ebx, r9d
mov r9b, byte [rdx + rcx]
mov r10b, 0x71
xor r10b, 0x8e
mov cl, r9b
xor cl, r10b
mov r10b, 0xff
xor r10b, 0x3f
or cl, r10b
xor r9b, 0xff
mov r10b, 0xff
xor r10b, 0x3f
or r9b, r10b
xor cl, 0xff
xor r9b, 0xff
or cl, r9b
movzx edi, cl
mov ecx, 0x17146b05
xor ecx, 0x17146b03
shl edi, cl
mov ecx, 0xfd7578c9
xor ecx, 0x28a8736
mov r9d, ebx
xor r9d, ecx
mov ecx, 0xe7405ade
xor ecx, 0x18bfa521
mov r11d, edi
xor r11d, ecx
mov r10d, 0xffffffff
xor r10d, 0x545e7d3b
mov ecx, r9d
and ecx, 0x545e7d3b
and ebx, r10d
mov esi, r11d
and esi, 0x545e7d3b
and edi, r10d
or ecx, ebx
or esi, edi
xor ecx, esi
or r9d, r11d
xor r9d, 0xffffffff
or r10d, 0x545e7d3b
and r9d, r10d
or ecx, r9d
mov dl, byte [rdx + r8]
xor dl, 0xff
mov r9b, 0xff
xor r9b, 0x3f
mov r8b, 0x8e
xor r8b, 0x5a
mov r10b, 0xa2
xor r10b, 0x5d
xor r8b, r10b
or dl, r9b
or r8b, 0xd4
xor dl, 0xff
and dl, r8b
movzx edx, dl
or ecx, edx
movabs rdx, 0x876491da805fce6e
add rax, rdx
add rax, 5
movabs rdx, 0xacc5367c5852035e
movabs r8, 0x2ba1a7a6d80dcd30
xor rdx, r8
sub rax, rdx
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jmp 0x140056ec1
mov rax, qword [rsp + 0x378]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, 0xfe
add rax, rcx
cmp rax, 0xfc
jne 0x140056e88
mov al, byte [rsp + 0x3c7]
test al, 1
jne 0x1400567ed
jmp 0x1400567f7
call fcn.14000ee80
jmp 0x1400599b8
mov ecx, dword [0x1402aa4c0]
xor ecx, 0xc7d037a7
mov edx, dword [0x1402aa4c4]
mov eax, ecx
and eax, edx
shl eax, 1
xor ecx, edx
add ecx, eax
mov edx, 0x4881cd94
xor edx, 0xa065f6ef
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
and ecx, 0xe8e43b7b
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x1b4f92e3
xor edx, 0xe4b06d1c
xor ecx, edx
or eax, ecx
mov ecx, 0xb0e872cf
xor ecx, 0xb171d57d
sub eax, ecx
mov ecx, 0xd5e2613
xor edx, edx
div ecx
cmp eax, 0x20cf812d
ja 0x140059b6e
mov r8, qword [rsp + 0x3b8]
mov eax, dword [0x1402aa4c8]
xor edx, edx
div dword [0x1402aa4cc]
mov rdx, qword [rsp + 0x398]
mov ecx, eax
xor ecx, 0xd70cfbc4
and ecx, 0x5b779a2
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov r9d, 0xdbb69c9b
xor r9d, 0x32980fef
mov r10d, 0xa73ea028
xor r10d, 0x4e10335c
or r9d, r10d
xor r9d, 0xffffffff
xor eax, 0xffffffff
xor r9d, 0xffffffff
and eax, r9d
or ecx, 0xe92e9374
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov r9d, 0x88fa9014
xor r9d, 0x77056feb
xor ecx, r9d
and eax, ecx
mov ecx, 0x8dbf5df9
xor ecx, 0xfbbdc6de
cmp rdx, r8
setg r8b
mov byte [rsp + 0x2ff], r8b
add rdx, 1
mov qword [rsp + 0x300], rdx
cmp eax, ecx
jb 0x140056862
mov rax, qword [rsp + 0x300]
mov dl, byte [rsp + 0x2ff]
mov ecx, 0xfffd
test dl, 1
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jne 0x140056ec1
jmp 0x14005693d
mov rax, qword [rsp + 0x300]
mov rcx, qword [rsp + 0x428]
cmp rax, rcx
jl 0x14005697e
mov rcx, qword [rsp + 0x300]
mov rax, qword [rsp + 0x428]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
add rax, 2
mov qword [rsp + 0x2f0], rax
cmp rax, rcx
jl 0x140056acc
mov eax, dword [0x1402aa4d0]
xor eax, dword [0x1402aa4d4]
add eax, 0x419c9b11
mov edx, 0xffffffff
xor edx, 0x9e585837
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x9e585837
add eax, edx
sub eax, ecx
mov ecx, 0x2eb627e7
xor ecx, 0x9821db58
and eax, ecx
mov ecx, 0x15d9474b
xor ecx, 0xeaf285aa
cmp eax, ecx
jae 0x140059b77
mov rcx, qword [rsp + 0x2f0]
mov rdx, qword [rsp + 0x428]
mov eax, dword [0x1402aa4d8]
xor eax, 0x80373f08
mov r9d, dword [0x1402aa4dc]
xor eax, 0xffffffff
xor r9d, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x9e1a15a7
or eax, r9d
or r8d, 0x9e1a15a7
xor eax, 0xffffffff
and eax, r8d
sub eax, 0x1b24c299
mov r10d, 0xffffffff
xor r10d, 0xfd356f3
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, eax
and r9d, 0xfd356f3
or eax, 0xfd356f3
imul eax, r9d
add eax, r8d
and eax, 0x34f79b7b
mov dword [rsp + 0x2ec], eax
mov eax, 0x1b73ea4d
xor eax, 0x9ebfc428
mov dword [rsp + 0x2e8], eax
movabs rax, 0x4b8db5d698a35606
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x4b8db5d698a35606
sub rdx, rax
call fcn.140025e55
mov ecx, dword [rsp + 0x2e8]
mov eax, dword [rsp + 0x2ec]
cmp eax, ecx
jae 0x1400569ef
jmp 0x1400599b8
mov eax, dword [0x1402aa4e0]
xor eax, 0x4a0e1d2c
mov edx, dword [0x1402aa4e4]
xor edx, 0xcb510e89
xor ecx, ecx
sub ecx, edx
add eax, ecx
add eax, 0xfa0f8baa
add eax, 0xcb2c14b2
sub eax, 0xfa0f8baa
add eax, 0xcb20883d
mov edx, eax
xor edx, 0xffffffff
and edx, 0x47ec67af
mov r8d, 0xffffffff
xor r8d, 0x47ec67af
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x47ec67af
or eax, 0x47ec67af
imul eax, edx
add eax, ecx
cmp eax, 0xc9956bb3
je 0x140059b80
mov rdx, qword [rsp + 0x428]
mov rcx, qword [rsp + 0x398]
mov eax, dword [0x1402aa4e8]
mov r8d, dword [0x1402aa4ec]
xor r8d, 0x8db494af
sub eax, 0x75039358
add eax, r8d
add eax, 0x75039358
xor eax, 0x5396039a
and eax, 0xd9be5620
and eax, 0x16c8dbf1
mov r8, 0xffffffffffffffff
xor r8, 3
xor r9d, r9d
sub r9, 1
sub r8, r9
sub rcx, r8
mov qword [rsp + 0x2d8], rcx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x2e7], cl
cmp eax, 0x61890b75
jae 0x140056b3a
mov al, byte [rsp + 0x2e7]
test al, 1
jne 0x140056be9
jmp 0x140056bc6
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x428]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
movabs r8, 0xc5acec35cba46828
movabs rdx, 0xc5acec35cba4682c
xor r8, rdx
mov rdx, rax
and rdx, r8
movabs r8, 0xe019d768970b4a5a
movabs r9, 0xe019d768970b4a58
xor r8, r9
imul rdx, r8
xor rax, 4
add rax, rdx
mov qword [rsp + 0x2d0], rax
cmp rax, rcx
jl 0x140056d47
mov eax, dword [0x1402aa4f0]
xor edx, edx
div dword [0x1402aa4f4]
mov ecx, 0xffffffff
xor ecx, 0x2c24149c
mov edx, eax
xor edx, ecx
and edx, eax
mov eax, edx
xor eax, 0xffffffff
mov ecx, 0x7f6df85e
xor ecx, 0x4858460f
and ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x3735be51
mov eax, edx
and eax, r8d
imul eax, ecx
mov ecx, edx
and ecx, 0x3735be51
or edx, 0x3735be51
imul edx, ecx
add edx, eax
mov ecx, edx
xor ecx, 0xcce9a421
mov eax, 0xffffffff
xor eax, 0xcce9a421
and edx, eax
mov eax, 0x8e617f28
xor eax, 0x8e617f2a
imul eax, edx
sub eax, ecx
cmp eax, 0xf8e0dcb6
je 0x140059b89
mov rcx, qword [rsp + 0x2d0]
mov rdx, qword [rsp + 0x428]
mov eax, dword [0x1402aa4f8]
sub eax, dword [0x1402aa4fc]
imul eax, eax, 0x63be083c
mov r8d, 0x9fcdfebb
xor r8d, 0xb5046060
sub eax, r8d
mov r8d, 0x6922a6a8
xor r8d, 0xacd79d2e
sub eax, r8d
mov dword [rsp + 0x2cc], eax
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140025e55
mov eax, dword [rsp + 0x2cc]
cmp eax, 0x1ca150c2
jb 0x140056cd0
jmp 0x1400599b8
mov rcx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x398]
add rax, 5
mov qword [rsp + 0x2c0], rax
cmp rax, rcx
jl 0x140056d94
mov rcx, qword [rsp + 0x2c0]
mov rax, qword [rsp + 0x428]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x398]
mov rcx, qword [rsp + 0x410]
mov r8, qword [rsp + 0x2c0]
mov r9, qword [rsp + 0x300]
mov r10b, byte [rsp + 0x3a7]
mov dl, r10b
xor dl, 2
and dl, r10b
movzx edx, dl
shl edx, 0x1e
movd xmm1, dword [rcx + r9]
movaps xmm0, xmmword [0x1402bb060]
pand xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
movaps xmm2, xmmword [0x1402bb070]
movaps xmm0, xmm1
pmuludq xmm0, xmm2
pshufd xmm0, xmm0, 0xe8
pshufd xmm1, xmm1, 0xf5
movaps xmm2, xmmword [0x1402bb080]
pmuludq xmm1, xmm2
pshufd xmm1, xmm1, 0xe8
punpckldq xmm0, xmm1
mov r8b, byte [rcx + r8]
mov cl, r8b
xor cl, 0xc0
and cl, r8b
movzx r8d, cl
pshufd xmm1, xmm0, 0xee
por xmm0, xmm1
pshufd xmm1, xmm0, 0x55
por xmm0, xmm1
movd ecx, xmm0
or ecx, edx
mov edx, r8d
and edx, ecx
xor edx, 0xffffffff
add ecx, r8d
add ecx, 1
add ecx, edx
mov rdx, rax
and rdx, 6
shl rdx, 1
movabs r8, 0x9dc1fe7f32ebe10d
movabs r9, 0x9dc1fe7f32ebe10b
xor r8, r9
xor rax, r8
add rax, rdx
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
jmp 0x140056ec1
mov rax, qword [rsp + 0x398]
mov cl, byte [rsp + 0x3a7]
movzx ecx, cl
mov rdx, 0xffffffffffffffff
xor rdx, 1
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov dword [rsp + 0x384], ecx
mov qword [rsp + 0x388], rax
mov ecx, dword [rsp + 0x384]
mov rax, qword [rsp + 0x388]
mov qword [rsp + 0x2b0], rax
call fcn.1400547a0
mov ecx, eax
mov rax, qword [rsp + 0x430]
mov dword [rsp + 0x2bc], ecx
mov al, byte [rax]
mov cl, 0x65
xor cl, 0x65
cmp al, cl
jne 0x1400599b8
mov eax, dword [rsp + 0x2bc]
cmp eax, 0x80
jae 0x1400573ec
mov rcx, qword [rsp + 0x390]
mov rax, rcx
add rax, 1
mov qword [rsp + 0x2a8], rax
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x50f92e81e1ff3d1a
movabs rdx, 0x50f92e81e1ff3d1a
xor rcx, rdx
cmp rax, rcx
jge 0x140056f57
call fcn.14000ee80
jmp 0x1400599b8
mov eax, dword [0x1402aa500]
mov edx, dword [0x1402aa504]
mov ecx, eax
and ecx, edx
or eax, edx
add ecx, eax
mov edx, 0xb4daab3f
xor edx, 0x4b2554c0
mov eax, ecx
xor eax, edx
mov r8d, 0xea82a895
xor r8d, 0x157d576a
mov edx, ecx
xor edx, r8d
and eax, edx
mov edx, 0xffffffff
xor edx, 0xca49e63
mov r8d, 0xba61156e
xor r8d, 0xb6c58b0d
mov r9d, 0x4bf92590
xor r9d, 0xb406da6f
xor r8d, r9d
and edx, r8d
xor eax, 0xffffffff
mov r8d, 0xf1b0ba2b
xor r8d, 0xe4f45d4
xor edx, r8d
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xae0541de
xor edx, 0xa2a1dfbd
mov r8d, 0x831b6a09
xor r8d, 0x7ce495f6
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x7d9ec09a
xor ecx, 0xa1188f8c
or eax, ecx
add eax, 0xdf26a00d
cmp eax, 0x3b677d11
jb 0x140059b92
mov rcx, qword [rsp + 0x2a8]
mov r9d, dword [0x1402aa508]
mov r8d, dword [0x1402aa50c]
mov r10d, r8d
xor r10d, 0xffffffff
mov edx, r9d
and edx, r10d
mov eax, r9d
or eax, r10d
mov r10d, 0x733a7083
xor r10d, 0x8cc58f7c
xor eax, r10d
imul eax, edx
mov edx, r9d
and edx, r8d
or r9d, r8d
imul r9d, edx
add r9d, eax
mov eax, r9d
xor eax, 0xffffffff
and eax, 0x60b01880
mov r8d, 0x474ce9b2
xor r8d, 0x27fcf132
mov edx, 0x4ba5a344
xor edx, 0xb45a5cbb
xor r8d, edx
and r9d, r8d
mov edx, 0xe2101ffc
xor edx, 0xe9b56c3f
mov r10d, 0x420d45
xor r10d, 0xffbdf2ba
xor edx, r10d
and edx, 0x60b01880
and r8d, 0xba573c3
or eax, r9d
or edx, r8d
xor eax, edx
mov edx, 0x18467a7c
xor edx, 0x93021562
add eax, edx
sub eax, 0x1522d3f
sub eax, 0x8b446f1e
mov edx, 0xabef7c84
xor edx, 0xdba8184d
add eax, edx
cmp rcx, 0
setl cl
mov byte [rsp + 0x2a7], cl
cmp eax, 0x39aebf37
jb 0x140057013
mov al, byte [rsp + 0x2a7]
test al, 1
jne 0x140057109
jmp 0x140057129
mov rcx, qword [rsp + 0x2a8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400599b8
mov eax, dword [0x1402aa510]
xor eax, 0xdb4961cb
mov ecx, dword [0x1402aa514]
xor ecx, 0x9326c6c8
xor eax, ecx
xor ecx, ecx
sub ecx, 0xe7f4c029
sub eax, ecx
mov ecx, 0xf22cd331
xor ecx, 0xd2613b11
sub eax, ecx
sub eax, 0xfb052b15
sub eax, 0xf18e07c6
add eax, 0xfb052b15
mov ecx, 0x85d43f78
xor ecx, 0x1c393fc
cmp eax, ecx
jae 0x140059b9b
mov rcx, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x2a8]
mov r9d, dword [0x1402aa518]
mov r10d, dword [0x1402aa51c]
mov eax, r9d
not eax
mov r8d, r10d
and r8d, eax
mov r11d, r10d
not r11d
mov eax, r9d
and eax, r11d
imul eax, r8d
mov r8d, r9d
and r8d, r10d
or r9d, r10d
imul r9d, r8d
add r9d, eax
mov eax, r9d
and eax, 0x4f86f7d3
add eax, eax
sub r9d, eax
add r9d, 0xcf86f7d3
mov eax, r9d
and eax, 0xa47502a
xor r9d, 0xa47502a
mov r8d, eax
mov eax, r9d
lea eax, [rax + r8*2]
or eax, 0xab8351ac
mov dword [rsp + 0x294], eax
call fcn.140028330
mov r8, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x390]
mov eax, dword [rsp + 0x294]
test rdx, rdx
setns cl
mov r8, qword [r8]
mov qword [rsp + 0x298], r8
sub rdx, r8
setl dl
and cl, dl
mov byte [rsp + 0x2a6], cl
cmp eax, 0x543f5271
jbe 0x14005717b
mov al, byte [rsp + 0x2a6]
test al, 1
jne 0x140057284
jmp 0x140057258
mov rcx, qword [rsp + 0x390]
mov rdx, qword [rsp + 0x298]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov ecx, dword [0x1402aa520]
xor ecx, 0xea86b30d
mov r8d, dword [0x1402aa524]
xor r8d, 0x35e1a4c5
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, r8d
xor eax, 0xffffffff
mov edx, r8d
xor edx, 0xffffffff
xor r8d, 0xffffffff
or edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x8dd26b15
xor ecx, 0x4f93dbc6
sub eax, ecx
mov ecx, 0x36396c2f
xor edx, edx
div ecx
xor ecx, ecx
sub ecx, 0x7e68c787
add eax, ecx
cmp eax, 0x2989bac2
jb 0x140059ba4
mov rcx, qword [rsp + 0x408]
mov edx, dword [0x1402aa528]
xor edx, 0xc42769ef
and edx, dword [0x1402aa52c]
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5ea8d2c8
and eax, r8d
xor edx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x5ea8d2c8
and edx, r8d
or eax, edx
xor eax, 0xffffffff
and eax, 0x8de85daa
imul eax, eax, 0xdc685df
mov rdx, qword [rcx]
mov qword [rsp + 0x288], rdx
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rsp + 0x293], cl
cmp eax, 0xd36b1b88
jae 0x140059ba4
mov rax, qword [rsp + 0x288]
mov cl, byte [rsp + 0x293]
test cl, 1
mov qword [rsp + 0x280], rax
jne 0x1400573ba
jmp 0x14005739a
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x280], rax
mov rax, qword [rsp + 0x2a8]
mov rdx, qword [rsp + 0x390]
mov r8d, dword [rsp + 0x2bc]
mov rcx, qword [rsp + 0x280]
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x278], rax
jmp 0x140059987
mov eax, dword [rsp + 0x2bc]
cmp eax, 0x800
jae 0x140057ac0
mov rdx, qword [rsp + 0x390]
mov rax, rdx
add rax, 2
mov qword [rsp + 0x270], rax
mov r8, rdx
and r8, 0xffffffffffffffff
movabs rcx, 0xe73849391532f323
movabs r9, 0xe73849391532f321
xor rcx, r9
imul rcx, r8
add rdx, 0xffffffffffffffff
sub rdx, rcx
movabs rcx, 0x1161f4ae5894330
movabs r8, 0xfee9e0b51a76bccf
xor rcx, r8
xor rax, rcx
movabs rcx, 0x5ae3279ee911d27b
movabs r8, 0xa51cd86116ee2d84
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x5be60f2c600fcbd8
xor rcx, r8
or rax, rdx
movabs rdx, 0x5be60f2c600fcbd8
or rcx, rdx
movabs rdx, 0xabc218fe250621d8
movabs r8, 0x543de701daf9de27
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x140057642
mov eax, dword [0x1402aa530]
sub eax, dword [0x1402aa534]
sub eax, 0xa098d2b
add eax, 0x5bcb3a4b
add eax, 0xa098d2b
mov edx, 0xb48ff9c5
xor edx, 0xa80cb00f
mov ecx, eax
and ecx, edx
or eax, 0x1c8349ca
add ecx, eax
mov edx, 0xe5b1904
xor edx, 0xf1a4e6fb
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x69ab1539
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x69ab1539
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0x81ba41cd
je 0x140059bad
mov r10d, dword [0x1402aa538]
mov r9d, dword [0x1402aa53c]
xor r9d, 0xf9797c6d
mov eax, r10d
xor eax, 0xffffffff
mov edx, r9d
xor edx, 0xffffffff
mov ecx, 0xc188140f
xor ecx, 0x4a742f38
mov r8d, 0x5f630915
xor r8d, 0xa09cf6ea
xor ecx, r8d
mov r11d, eax
and r11d, 0x8bfc3b37
and r10d, ecx
mov r8d, edx
and r8d, 0x8bfc3b37
and r9d, ecx
or r11d, r10d
or r8d, r9d
xor r11d, r8d
or eax, edx
mov edx, 0x9170060f
xor edx, 0x6e8ff9f0
xor eax, edx
or ecx, 0x8bfc3b37
and eax, ecx
or r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa8a7ea36
mov r8d, 0xffffffff
xor r8d, 0xaec06f13
mov r9d, 0x6482bcbd
xor r9d, 0xca42d3ae
mov eax, ecx
and eax, r9d
and r11d, r8d
mov r9d, edx
and r9d, 0xaec06f13
mov r10d, r8d
and r10d, 0xa8a7ea36
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x23a8108d
xor edx, 0x8d687f9e
or edx, r8d
and ecx, edx
or eax, ecx
or eax, 0x86119862
mov ecx, 0xb8d6a979
xor ecx, 0x69698288
sub eax, ecx
mov dword [rsp + 0x26c], eax
call fcn.14000ee80
mov eax, dword [rsp + 0x26c]
cmp eax, 0x9fefb5f1
je 0x140059bad
jmp 0x1400599b8
mov rax, qword [rsp + 0x270]
movabs rcx, 0x94a5dd8d02db6d72
movabs rdx, 0x94a5dd8d02db6d72
xor rcx, rdx
cmp rax, rcx
jge 0x14005768a
mov rcx, qword [rsp + 0x270]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400599b8
mov eax, dword [0x1402aa540]
imul eax, dword [0x1402aa544]
mov ecx, 0xe119dd3e
xor edx, edx
div ecx
mov ecx, 0x70c7a2fb
xor edx, edx
div ecx
xor eax, 0x9503c88d
mov ecx, 0x96ac32c
xor ecx, 0x5a6fc5d5
cmp eax, ecx
je 0x140059bb6
mov rcx, qword [rsp + 0x418]
mov eax, dword [0x1402aa548]
mov r8d, dword [0x1402aa54c]
xor r8d, 0x6a33572e
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x270]
mov r9d, eax
add r9d, 0x22af2e7c
mov eax, r9d
and eax, 0x4b6199
xor r9d, 0x4b6199
mov r8d, eax
mov eax, r9d
lea eax, [rax + r8*2]
mov r9d, eax
not r9d
and r9d, 0xfe124366
mov r8d, eax
and r8d, 0x1edbc99
imul r8d, r9d
mov r9d, eax
and r9d, 0xfe124366
or eax, 0xfe124366
imul eax, r9d
add eax, r8d
mov dword [rsp + 0x25c], eax
call fcn.140028330
mov r8, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x390]
mov eax, dword [rsp + 0x25c]
test rdx, rdx
setns cl
mov r8, qword [r8]
mov qword [rsp + 0x260], r8
sub rdx, r8
setl dl
and cl, dl
mov byte [rsp + 0x26b], cl
cmp eax, 0xd673c033
jae 0x140059bb6
mov al, byte [rsp + 0x26b]
test al, 1
jne 0x1400577be
jmp 0x1400577a0
mov rcx, qword [rsp + 0x390]
mov rdx, qword [rsp + 0x260]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x250], rax
je 0x140057808
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x250], rax
mov rax, qword [rsp + 0x250]
mov qword [rsp + 0x248], rax
mov eax, dword [0x1402aa550]
xor edx, edx
div dword [0x1402aa554]
mov ecx, 0x4b095770
xor ecx, 0xd7a18ea1
xor edx, edx
div ecx
xor eax, 0x4578ac7b
mov ecx, eax
xor ecx, 0x16ce4595
xor ecx, 0xffffffff
or eax, 0x16ce4595
and eax, ecx
mov ecx, 0x78403679
xor ecx, 0xf6f5e04f
cmp eax, ecx
ja 0x140059bbf
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x390]
mov r8, qword [rsp + 0x248]
mov r9d, dword [rsp + 0x2bc]
mov r11d, dword [0x1402aa558]
mov eax, dword [0x1402aa55c]
mov esi, 0xda15b31d
xor esi, 0x25ea4ce2
mov r10d, r11d
xor r10d, esi
mov esi, 0xc1aed957
xor esi, 0x3e5126a8
xor r11d, esi
or r10d, r11d
and eax, eax
xor eax, 0xffffffff
and r10d, eax
mov eax, 0x4869a863
xor eax, 0xb796579c
xor r10d, eax
mov r11d, 0xffffffff
xor r11d, 0x5ece3868
mov eax, r10d
xor eax, r11d
and eax, r10d
imul eax, eax, 0xc64c842d
add eax, 0x1c2ed405
shr r9d, 6
or r9b, 0xc0
mov byte [r8 + rcx + 8], r9b
add rcx, 1
mov qword [rsp + 0x230], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x238], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x247], cl
cmp eax, 0x51d04b26
jae 0x140059bbf
mov al, byte [rsp + 0x247]
test al, 1
jne 0x140057a3c
jmp 0x140057934
mov eax, dword [0x1402aa560]
mov r8d, dword [0x1402aa564]
xor r8d, 0xeb3aec23
mov ecx, eax
xor ecx, 0xffffffff
mov edx, r8d
and edx, ecx
mov r9d, r8d
xor r9d, 0xffffffff
mov ecx, eax
and ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x18906162
xor ecx, 0x425a8cf8
imul eax, ecx
mov ecx, 0x3c4efa84
xor ecx, 0x49e7ffa6
sub eax, ecx
sub eax, 0xfa25893a
mov ecx, 0x155a3cb0
xor ecx, 0x59313c9c
add eax, ecx
add eax, 0xfa25893a
cmp eax, 0xc290eab1
je 0x140059bc8
mov rcx, qword [rsp + 0x230]
mov rdx, qword [rsp + 0x238]
mov eax, dword [0x1402aa568]
or eax, dword [0x1402aa56c]
mov r8d, 0x2d866715
xor r8d, 0x54acb3b7
imul eax, r8d
xor r8d, r8d
sub r8d, 0x7653c162
sub eax, r8d
or eax, 0xffd92fb4
mov dword [rsp + 0x22c], eax
mov eax, 0xba5ba68c
xor eax, 0xe44f94c9
mov dword [rsp + 0x228], eax
movabs rax, 0xc87f571906cf4719
movabs r8, 0x3780a8e6f930b8e6
xor rax, r8
add rdx, rax
call fcn.140025e55
mov ecx, dword [rsp + 0x228]
mov eax, dword [rsp + 0x22c]
cmp eax, ecx
jb 0x1400579ab
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x220], rax
je 0x140057a86
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x230]
mov r8d, dword [rsp + 0x2bc]
mov rcx, qword [rsp + 0x220]
and r8b, 0x3f
or r8b, 0x80
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x278], rax
jmp 0x140059987
mov eax, dword [rsp + 0x2bc]
cmp eax, 0x10000
jae 0x140057ffd
mov rax, qword [rsp + 0x390]
xor ecx, ecx
mov edx, ecx
sub rdx, rax
movabs rcx, 0x69b932e3ea795941
movabs r8, 0x69b932e3ea795941
xor rcx, r8
movabs r8, 0xb7f01278d686fdeb
movabs r9, 0xb7f01278d686fde8
xor r8, r9
sub rcx, r8
add rdx, rcx
xor ecx, ecx
sub rcx, rdx
mov qword [rsp + 0x218], rcx
mov rdx, rax
xor rdx, 0xffffffffffffffff
mov r8, rax
xor r8, 0xffffffffffffffff
or rdx, r8
movabs r8, 0xf092c2c84af5335c
movabs r9, 0xf6d3d37b50acca3
xor r8, r9
xor rdx, r8
movabs r8, 0x907b29192fda06b6
movabs r9, 0x6f84d6e6d025f949
xor r8, r9
movabs r9, 0x55ca5c7fe0321830
movabs r10, 0xaa35a3801fcde7cf
xor r9, r10
xor r8, r9
or rdx, r8
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
movabs r9, 0xe6cd27054bafc5ea
movabs r10, 0x1932d8fab4503a15
xor r9, r10
movabs r10, 0x5365109b8992c876
movabs r11, 0xac9aef64766d3789
xor r10, r11
xor r9, r10
or r8, r9
and rax, r8
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r8, 0x45c01782a5791b46
movabs r9, 0xba3fe87d5a86e4b9
xor r8, r9
xor rax, r8
or rdx, rax
xor rdx, 0xffffffffffffffff
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x63da57073b2b99d2
movabs rdx, 0x63da57073b2b99d2
xor rcx, rdx
cmp rax, rcx
jge 0x140057c1f
call fcn.14000ee80
jmp 0x1400599b8
mov rax, qword [rsp + 0x218]
cmp rax, 0
jge 0x140057c51
mov rcx, qword [rsp + 0x218]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400599b8
mov rcx, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x218]
call fcn.140028330
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x390]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x210], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140057cb5
mov rcx, qword [rsp + 0x390]
mov rdx, qword [rsp + 0x210]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x208], rax
je 0x140057cff
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x208], rax
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x208]
shr r8d, 0xc
mov r9b, r8b
mov r8b, r9b
and r8b, 0xe0
mov r10b, 0xcd
xor r10b, 0x2d
xor r9b, r10b
or r8b, r9b
mov byte [rdx + rax + 8], r8b
movabs rdx, 0x52498ee215c6ec62
sub rax, rdx
add rax, 1
movabs rdx, 0x52498ee215c6ec62
add rax, rdx
mov qword [rsp + 0x1f8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x200], rcx
cmp rax, rcx
jl 0x140057da1
mov rcx, qword [rsp + 0x1f8]
mov rax, qword [rsp + 0x200]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0xfd98f4cf089ac3f6
movabs rdx, 0xfd98f4cf089ac3f7
xor r8, rdx
mov rdx, rcx
add rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
movabs rdx, 0x6f90003d49b1a1fa
movabs r8, 0x6f90003d49b1a1fa
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x1f0], rax
je 0x140057e28
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x1f0], rax
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8, qword [rsp + 0x1f8]
mov r9d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x1f0]
shr r9d, 6
mov r10b, r9b
and r10b, 0x3f
mov r9b, r10b
xor r9b, 0xff
mov r11b, 0x94
xor r11b, 0x6b
xor r10b, r11b
or r9b, r10b
mov r10b, 0xff
xor r10b, 0x80
mov r11b, 0xff
xor r11b, 0x80
or r10b, r11b
and r9b, r10b
xor r9b, 0xff
mov byte [rdx + r8 + 8], r9b
add rax, 2
mov qword [rsp + 0x1e0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1e8], rcx
cmp rax, rcx
jl 0x140057f04
mov rcx, qword [rsp + 0x1e0]
mov rdx, qword [rsp + 0x1e8]
xor eax, eax
sub rax, rdx
movabs rdx, 0xa096fbe6c1cdb40f
movabs r8, 0xa096fbe6c1cdb40f
xor rdx, r8
movabs r8, 0x8309239345665935
movabs r9, 0x7cf6dc6cba99a6ca
xor r8, r9
sub rdx, r8
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0xae3f6bae869d705f
movabs rdx, 0xae3f6bae869d705e
xor r8, rdx
mov rdx, rcx
add rdx, r8
xor rcx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
add rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x1d8], rax
je 0x140057f75
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x1d8], rax
mov rax, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x1e0]
mov r8d, dword [rsp + 0x2bc]
mov rcx, qword [rsp + 0x1d8]
mov dil, r8b
and dil, 0x3f
mov r9b, dil
xor r9b, 0xff
mov r11b, 0xff
xor r11b, 0x80
mov r10b, 0xff
xor r10b, 0xe4
mov r8b, r9b
and r8b, 0xe4
and dil, r10b
mov bl, r11b
and bl, 0xe4
mov sil, 0xad
xor sil, 0x2d
and sil, r10b
or r8b, dil
or bl, sil
xor r8b, bl
or r9b, r11b
mov r11b, 0x1d
xor r11b, 0xe2
xor r9b, r11b
or r10b, 0xe4
and r9b, r10b
or r8b, r9b
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x278], rax
jmp 0x140059987
mov eax, dword [rsp + 0x2bc]
cmp eax, 0x200000
jae 0x140058572
mov rcx, qword [rsp + 0x390]
movabs rdx, 0xf644b423303bf567
mov rax, rcx
sub rax, rdx
movabs rdx, 0xa73ea383debe15ea
movabs r8, 0xa73ea383debe15ee
xor rdx, r8
add rax, rdx
movabs rdx, 0xf644b423303bf567
add rax, rdx
mov qword [rsp + 0x1d0], rax
mov rdx, rcx
or rdx, rdx
xor rdx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
or r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x1998eb48ff043b1c
movabs r9, 0xe66714b700fbc4e3
xor r8, r9
xor rcx, r8
and rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x1400580ce
call fcn.14000ee80
jmp 0x1400599b8
mov rax, qword [rsp + 0x1d0]
cmp rax, 0
jge 0x140058100
mov rcx, qword [rsp + 0x1d0]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400599b8
mov rcx, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x1d0]
call fcn.140028330
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x390]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x1c8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005817a
mov rcx, qword [rsp + 0x390]
mov rdx, qword [rsp + 0x1c8]
movabs rax, 0x4650730fe64c9892
movabs r8, 0xb9af8cf019b3676d
xor rax, r8
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x1c0], rax
je 0x1400581c4
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x390]
mov r8d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x1c0]
mov ecx, 0x5b800776
xor ecx, 0x5b800764
shr r8d, cl
mov rcx, qword [rsp + 0x418]
or r8b, 0xf0
mov byte [rdx + rax + 8], r8b
movabs rdx, 0xa5ce92f73f5ef59
movabs r8, 0xa5ce92f73f5ef58
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x1b0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1b8], rcx
cmp rax, rcx
jl 0x14005825e
mov rcx, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1b8]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
movabs rdx, 0xf9b55a8b8140135d
movabs r8, 0xf9b55a8b8140135d
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x1a8], rax
je 0x1400582be
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x1a8], rax
mov rcx, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x390]
mov r8, qword [rsp + 0x1b0]
mov r9d, dword [rsp + 0x2bc]
mov rax, qword [rsp + 0x1a8]
shr r9d, 0xc
mov r10b, r9b
and r10b, 0x3f
mov r9b, r10b
xor r9b, 0xff
mov r11b, 0xde
xor r11b, 0x21
xor r10b, r11b
or r9b, r10b
mov r10b, 0xff
xor r10b, 0x80
mov r11b, 0xff
xor r11b, 0x80
or r10b, r11b
mov r11b, 0xe3
xor r11b, 0x1c
xor r9b, r11b
xor r10b, 0xff
or r9b, r10b
mov byte [rax + r8 + 8], r9b
mov rax, rdx
and rax, 2
or rdx, 2
add rax, rdx
mov qword [rsp + 0x198], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1a0], rcx
cmp rax, rcx
jl 0x140058374
mov rcx, qword [rsp + 0x198]
mov rdx, qword [rsp + 0x1a0]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rdx, qword [rax]
movabs r8, 0x8c9775b53d2c8321
movabs rcx, 0xcc9775b53d2c8321
xor r8, rcx
mov rcx, rdx
and rcx, r8
movabs r8, 0xb6a94d5ac3047db4
movabs r9, 0x4956b2a53cfb824b
xor r8, r9
xor rcx, r8
movabs r8, 0x4000000000000000
and rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x530007773f2e9c44
movabs r9, 0xacfff888c0d163bb
xor r8, r9
xor rcx, r8
movabs r8, 0x2bdd0c2abffbe37d
movabs r9, 0xd422f3d540041c82
xor r8, r9
xor rdx, r8
or rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x190], rax
je 0x140058433
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x190], rax
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8, qword [rsp + 0x198]
mov r9d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x190]
shr r9d, 6
mov r10b, 0x34
xor r10b, 0xb
and r9b, r10b
or r9b, 0x80
mov byte [rdx + r8 + 8], r9b
add rax, 3
mov qword [rsp + 0x180], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x188], rcx
cmp rax, rcx
jl 0x1400584ee
mov rcx, qword [rsp + 0x180]
mov rdx, qword [rsp + 0x188]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
movabs r8, 0x46f37553ef6142ea
movabs r9, 0x46f37553ef6142ea
xor r8, r9
movabs r9, 0x214ddccd4a90b482
movabs r10, 0x214ddccd4a90b483
xor r9, r10
sub r8, r9
sub rax, r8
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x178], rax
je 0x140058538
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x178], rax
mov rax, qword [rsp + 0x1d0]
mov rdx, qword [rsp + 0x180]
mov r8d, dword [rsp + 0x2bc]
mov rcx, qword [rsp + 0x178]
and r8b, 0x3f
or r8b, 0x80
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x278], rax
jmp 0x140059987
mov eax, dword [rsp + 0x2bc]
cmp eax, 0x4000000
jae 0x140058e9c
mov rcx, qword [rsp + 0x390]
movabs rdx, 0xdd601ec81472b819
movabs rax, 0xdd601ec81472b819
xor rdx, rax
sub rdx, rcx
movabs rax, 0x906b6f207f59c86a
movabs r8, 0x906b6f207f59c86a
xor rax, r8
movabs r8, 0x8091d6b5a630926f
movabs r9, 0x8091d6b5a630926a
xor r8, r9
sub rax, r8
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x170], rax
mov rdx, rcx
xor rdx, 0xffffffffffffffff
mov r8, rcx
xor r8, 0xffffffffffffffff
and rdx, r8
movabs r8, 0x7324a65f597ef5c8
movabs r9, 0x8cdb59a0a6810a37
xor r8, r9
movabs r9, 0xae392b07b69520df
movabs r10, 0x51c6d4f8496adf20
xor r9, r10
or r8, r9
xor r8, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
movabs r8, 0x874d01cf340c05b7
movabs r9, 0x78b2fe30cbf3fa48
xor r8, r9
xor rcx, r8
movabs r8, 0x465b72331a3ff3d4
movabs r9, 0xb9a48dcce5c00c2b
xor r8, r9
movabs r9, 0x676d93e01ffefd7d
movabs r10, 0x98926c1fe0010282
xor r9, r10
xor r8, r9
and rcx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rdx, rcx
xor rax, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs r8, 0xc3e6235b17affce0
xor rcx, r8
or rax, rdx
movabs rdx, 0xc3e6235b17affce0
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x36bd7fa515484d4e
movabs rdx, 0x36bd7fa515484d4e
xor rcx, rdx
cmp rax, rcx
jge 0x1400586ee
call fcn.14000ee80
jmp 0x1400599b8
mov rax, qword [rsp + 0x170]
movabs rcx, 0x5656280b533eb4ae
movabs rdx, 0x5656280b533eb4ae
xor rcx, rdx
cmp rax, rcx
jge 0x140058736
mov rcx, qword [rsp + 0x170]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400599b8
mov rcx, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x170]
call fcn.140028330
mov rdx, qword [rsp + 0x418]
mov rcx, qword [rsp + 0x390]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x168], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14005879a
mov rcx, qword [rsp + 0x390]
mov rdx, qword [rsp + 0x168]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
movabs rdx, 0xa8499c7d61922ce9
movabs r8, 0xa8499c7d61922ce9
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x160], rax
je 0x1400587fa
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x390]
mov r8d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x160]
mov ecx, 0xd130b23f
xor ecx, 0xd130b227
shr r8d, cl
mov rcx, qword [rsp + 0x418]
mov r9b, 0x3f
xor r9b, 0xc7
or r8b, r9b
mov byte [rdx + rax + 8], r8b
xor edx, edx
sub rdx, 1
sub rax, rdx
mov qword [rsp + 0x150], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x158], rcx
cmp rax, rcx
jl 0x14005887a
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x158]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x148], rax
je 0x1400588c4
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x148], rax
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8, qword [rsp + 0x150]
mov r9d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x148]
shr r9d, 0x12
and r9b, 0x3f
or r9b, 0x80
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0x61a2d15160158a7f
movabs r8, 0x61a2d15160158a7d
xor rdx, r8
movabs r8, 0x3653e7a3b02ab721
movabs r9, 0xc9ac185c4fd548de
xor r8, r9
xor rdx, r8
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x138], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x140], rcx
cmp rax, rcx
jl 0x140058975
mov rcx, qword [rsp + 0x138]
mov rdx, qword [rsp + 0x140]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x130], rax
je 0x1400589bf
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
mov qword [rsp + 0x128], rax
mov eax, dword [0x1402aa570]
mov ecx, dword [0x1402aa574]
mov edx, 0x61495af8
xor edx, 0x9eb6a507
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x1f4f95c0
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x1f4f95c0
or eax, 0x1f4f95c0
imul eax, edx
add eax, ecx
xor eax, 0x65b20e01
sub eax, 0xe284357a
cmp eax, 0xabdc4089
jae 0x140059bd1
mov rcx, qword [rsp + 0x390]
mov r8, qword [rsp + 0x128]
mov r9, qword [rsp + 0x138]
mov r10d, dword [rsp + 0x2bc]
mov eax, dword [0x1402aa578]
mov r11d, dword [0x1402aa57c]
mov edx, 0xf634694b
xor edx, 0xcaaa6d1c
xor r11d, edx
mov edx, eax
and edx, r11d
shl edx, 1
add eax, r11d
sub eax, edx
mov r11d, 0x851ed695
xor r11d, 0xc1d0ec
xor edx, edx
div r11d
mov rdx, qword [rsp + 0x418]
mov r11d, 0xba56173c
xor r11d, 0x2970d73b
add eax, r11d
mov esi, 0xffdde064
xor esi, 0x713c3c3d
mov r11d, eax
xor r11d, esi
mov esi, 0x4c1880da
xor esi, 0xb3e77f25
xor r11d, esi
or eax, 0x8ee1dc59
and eax, r11d
shr r10d, 0xc
and r10b, 0x3f
mov r11b, 5
xor r11b, 0x85
or r10b, r11b
mov byte [r8 + r9 + 8], r10b
movabs r8, 0xb7c6aa793bb93ab2
add rcx, r8
add rcx, 3
movabs r8, 0xb7c6aa793bb93ab2
sub rcx, r8
mov qword [rsp + 0x110], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x118], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x127], cl
cmp eax, 0xbf35b902
jae 0x140059bd1
mov al, byte [rsp + 0x127]
test al, 1
jne 0x140058b96
jmp 0x140058b42
mov rcx, qword [rsp + 0x110]
mov rax, qword [rsp + 0x118]
movabs r8, 0xda115347ddaec16a
movabs rdx, 0x25eeacb822513e95
xor r8, rdx
mov rdx, rax
and rdx, r8
movabs r8, 0xb4c19ccc43a0befa
movabs r9, 0x4b3e6333bc5f4105
xor r8, r9
or rax, r8
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rdx, qword [rax]
movabs r8, 0xd9e9ed5073839386
movabs rcx, 0x99e9ed5073839386
xor r8, rcx
movabs rcx, 0x14c4410f36d9fda8
movabs r9, 0xeb3bbef0c9260257
xor rcx, r9
xor r8, rcx
mov rcx, rdx
xor rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x108], rax
je 0x140058c10
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x108], rax
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8, qword [rsp + 0x110]
mov r9d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x108]
shr r9d, 6
mov bpl, r9b
and bpl, 0x3f
mov r10b, bpl
xor r10b, 0xff
mov bl, 0xff
xor bl, 0x80
mov r11b, 0xff
xor r11b, 0x15
mov r9b, r10b
and r9b, 0x15
and bpl, r11b
mov sil, bl
and sil, 0x15
mov dil, r11b
and dil, 0x80
or r9b, bpl
or sil, dil
xor r9b, sil
or r10b, bl
mov bl, 0xc2
xor bl, 0x3d
xor r10b, bl
or r11b, 0x15
and r10b, r11b
or r9b, r10b
mov byte [rdx + r8 + 8], r9b
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 4
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0xf8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x100], rcx
cmp rax, rcx
jl 0x140058cde
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x100]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0x78d41cf1c4f28e58
movabs r8, 0x38d41cf1c4f28e58
xor rdx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0xf0], rax
je 0x140058e4e
mov eax, dword [0x1402aa580]
mov edx, dword [0x1402aa584]
mov ecx, edx
and ecx, eax
mov r8d, 0x55fc59fc
xor r8d, 0xaa03a603
xor ecx, r8d
add eax, edx
add eax, 1
add eax, ecx
mov ecx, eax
xor ecx, 0x697bacdb
xor ecx, 0xffffffff
mov edx, 0xacc7c40
xor edx, 0x63b7d09b
or eax, edx
and eax, ecx
mov ecx, 0x138f134f
xor ecx, 0x5ab31804
xor edx, edx
div ecx
mov ecx, 0x4f8cd419
xor ecx, 0xf0465c88
xor eax, ecx
cmp eax, 0x9fcaddbd
jb 0x140059bda
mov rcx, qword [rsp + 0x418]
mov edx, dword [0x1402aa588]
mov eax, dword [0x1402aa58c]
xor eax, 0x849ff8d1
and edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0xd64a52b4
mov r8d, 0xffffffff
xor r8d, 0xd64a52b4
and edx, r8d
sub edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r9d, 0x40b8b197
xor r9d, 0xbf474e68
mov r8d, edx
xor r8d, r9d
and eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x1858740c
mov r9d, 0xffffffff
xor r9d, 0x1858740c
and r8d, r9d
or eax, r8d
xor eax, 0xffffffff
or edx, 0x1858740c
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
and eax, 0x55ae87b1
mov dword [rsp + 0xe4], eax
call fcn.140027e50
mov rcx, qword [rsp + 0x408]
mov eax, dword [rsp + 0xe4]
mov rcx, qword [rcx]
mov qword [rsp + 0xe8], rcx
cmp eax, 0x5942580a
je 0x140058d80
mov rax, qword [rsp + 0xe8]
mov qword [rsp + 0xf0], rax
jmp 0x140058e4e
mov rax, qword [rsp + 0x170]
mov rdx, qword [rsp + 0xf8]
mov r8d, dword [rsp + 0x2bc]
mov rcx, qword [rsp + 0xf0]
mov r9b, r8b
add r9b, 1
xor r8b, 0xff
mov r10b, 0xec
xor r10b, 0xd3
or r8b, r10b
add r8b, r9b
or r8b, 0x80
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x278], rax
jmp 0x140059987
mov rax, qword [rsp + 0x390]
mov ecx, dword [rsp + 0x2bc]
cmp ecx, 0xffffffff
mov qword [rsp + 0x278], rax
jle 0x140059987
mov rdx, qword [rsp + 0x390]
movabs rcx, 0x5ba0013d5b772c4c
movabs rax, 0x6c66c63847ad2a91
xor rcx, rax
mov rax, rdx
add rax, rcx
add rax, 6
movabs rcx, 0x37c6c7051cda06dd
sub rax, rcx
mov qword [rsp + 0xd8], rax
movabs rcx, 0x66fc2754d244cf47
movabs r8, 0x9903d8ab2dbb30b8
xor rcx, r8
xor rdx, rcx
movabs rcx, 0x159812e2abafd11a
movabs r8, 0xea67ed1d54502ee5
xor rcx, r8
xor rax, rcx
movabs rcx, 0x5a87c00ba8e34645
movabs r8, 0xa5783ff4571cb9ba
xor rcx, r8
xor rdx, rcx
mov rcx, 0xffffffffffffffff
movabs r8, 0x1234ab0e6ce18f5e
xor rcx, r8
or rax, rdx
movabs rdx, 0x1234ab0e6ce18f5e
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x14005900d
mov eax, dword [0x1402aa590]
mov ecx, 0x14529ee8
xor ecx, 0xd84e9bd8
xor eax, ecx
and eax, dword [0x1402aa594]
mov ecx, 0x21fafe9
xor edx, edx
div ecx
imul eax, eax, 0x825b1e8
or eax, 0x74ff92a1
mov ecx, 0xf00a35fc
xor ecx, 0x8fb3bf79
cmp eax, ecx
jae 0x140059be3
mov eax, dword [0x1402aa598]
xor eax, 0x4273027a
imul eax, dword [0x1402aa59c]
and eax, 0x5d418c79
add eax, 0xe4ddd393
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xf03ae749
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [rsp + 0xd4], eax
call fcn.14000ee80
mov eax, dword [rsp + 0xd4]
cmp eax, 0x5c6fbbc5
jb 0x140059be3
jmp 0x1400599b8
mov rax, qword [rsp + 0xd8]
cmp rax, 0
jge 0x14005903f
mov rcx, qword [rsp + 0xd8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.140018506
jmp 0x1400599b8
mov eax, dword [0x1402aa5a0]
mov ecx, dword [0x1402aa5a4]
xor ecx, 0x9460001f
or eax, ecx
mov ecx, 0x249481f0
xor ecx, 0x78a93113
add eax, ecx
and eax, 0xee758fb7
mov ecx, 0x5c99684
xor ecx, 0xfa36697b
xor eax, ecx
mov edx, 0xffffffff
xor edx, 0x55eda3c
mov ecx, 0x9ef874cd
xor ecx, 0xd0a91781
mov r8d, 0x72e30802
xor r8d, 0x8d1cf7fd
xor ecx, r8d
or eax, edx
or ecx, 0x4e51634c
mov edx, 0x9e10a8a2
xor edx, 0x61ef575d
xor eax, edx
and eax, ecx
cmp eax, 0xd04c5d4c
ja 0x140059bec
mov rcx, qword [rsp + 0x418]
mov rdx, qword [rsp + 0xd8]
mov r8d, dword [0x1402aa5a8]
mov eax, r8d
xor eax, 0xccb5104c
mov r10d, dword [0x1402aa5ac]
xor r8d, 0x334aefb3
mov r9d, r10d
and r9d, r8d
mov r11d, r10d
not r11d
mov r8d, eax
and r8d, r11d
imul r8d, r9d
mov r9d, eax
and r9d, r10d
or eax, r10d
imul eax, r9d
add eax, r8d
mov r9d, eax
not r9d
or r9d, 0xba5e39f7
mov r8d, eax
mov eax, r9d
lea eax, [rax + r8 + 0x7b463af7]
mov r8d, eax
and r8d, 0x7c1ea663
add r8d, r8d
sub eax, r8d
add eax, 0xfc1ea663
mov dword [rsp + 0xc4], eax
call fcn.140028330
mov r8, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x390]
mov eax, dword [rsp + 0xc4]
test rdx, rdx
setns cl
mov r8, qword [r8]
mov qword [rsp + 0xc8], r8
sub rdx, r8
setl dl
and cl, dl
mov byte [rsp + 0xd3], cl
cmp eax, 0xd33c744d
jae 0x1400590ba
mov al, byte [rsp + 0xd3]
test al, 1
jne 0x1400591bd
jmp 0x14005919f
mov rcx, qword [rsp + 0x390]
mov rdx, qword [rsp + 0xc8]
add rdx, 0xffffffffffffffff
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs r8, 0x4000000000000000
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
or rcx, r8
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0xb8], rax
je 0x140059221
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x390]
mov r8d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0xb8]
mov ecx, 0x15bff6bd
xor ecx, 0x15bff6a3
shr r8d, cl
mov rcx, qword [rsp + 0x418]
mov dil, r8b
mov r9b, dil
xor r9b, 0xff
mov r10b, 0x93
xor r10b, 0x6f
mov r8b, 0xf5
xor r8b, 0xa
xor r10b, r8b
mov r11b, 0xff
xor r11b, 0x4a
mov bl, 0x40
xor bl, 0xa
mov r8b, r9b
and r8b, bl
and dil, r11b
mov sil, 0xa1
xor sil, 0xeb
mov bl, r10b
and bl, sil
mov sil, r11b
and sil, 0xfc
or r8b, dil
or bl, sil
xor r8b, bl
or r9b, r10b
xor r9b, 0xff
mov r10b, 0xff
xor r10b, 0xb5
or r10b, r11b
and r9b, r10b
or r8b, r9b
mov byte [rdx + rax + 8], r8b
movabs rdx, 0x1ca2c3c6bde48cdc
add rax, rdx
movabs rdx, 0x36e8671dafdb77a4
movabs r8, 0x36e8671dafdb77a5
xor rdx, r8
add rax, rdx
movabs rdx, 0xfb6697c0833500d6
movabs r8, 0xe7c454063ed18c0a
xor rdx, r8
sub rax, rdx
mov qword [rsp + 0xa8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xb0], rcx
cmp rax, rcx
jl 0x14005934d
mov rcx, qword [rsp + 0xa8]
mov rdx, qword [rsp + 0xb0]
movabs rax, 0xec94008d52c03
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xec94008d52c03
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0xa0], rax
je 0x140059459
mov ecx, dword [0x1402aa5b0]
xor ecx, 0xc5a4424e
imul ecx, dword [0x1402aa5b4]
mov eax, ecx
xor eax, 0xffffffff
and eax, 0xe39a12e3
mov edx, 0xffffffff
xor edx, 0xe39a12e3
and ecx, edx
or eax, ecx
xor ecx, ecx
sub ecx, 0x14737422
sub eax, ecx
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x8ee6bc02
add ecx, eax
mov eax, 0x95e1e403
xor eax, 0x95e1e403
sub eax, ecx
cmp eax, 0x79e92f40
jbe 0x140059bf5
mov rcx, qword [rsp + 0x418]
mov eax, dword [0x1402aa5b8]
or eax, dword [0x1402aa5bc]
imul eax, eax, 0x82f20c67
mov edx, 0x5fecda89
xor edx, 0x2d6d8a23
imul eax, edx
sub eax, 0xc2a1f453
mov dword [rsp + 0x94], eax
mov eax, 0x5be8d8e8
xor eax, 0xee707c64
mov dword [rsp + 0x90], eax
call fcn.140027e50
mov rdx, qword [rsp + 0x408]
mov ecx, dword [rsp + 0x90]
mov eax, dword [rsp + 0x94]
mov rdx, qword [rdx]
mov qword [rsp + 0x98], rdx
cmp eax, ecx
ja 0x140059bf5
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xa0], rax
jmp 0x140059459
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8, qword [rsp + 0xa8]
mov r9d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0xa0]
shr r9d, 0x18
or r9b, r9b
xor r9b, 0xff
mov r10b, 0x3f
or r10b, 0x3f
xor r10b, 0xff
xor r9b, 0xff
xor r10b, 0xff
and r9b, r10b
or r9b, 0x80
mov byte [rdx + r8 + 8], r9b
add rax, 2
mov qword [rsp + 0x80], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x88], rcx
cmp rax, rcx
jl 0x14005950d
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
movabs r8, 0x96ff6413078a06bf
movabs rax, 0x69009becf875f940
xor r8, rax
mov rax, rdx
and rax, r8
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
cmp rcx, 0
mov qword [rsp + 0x78], rax
je 0x140059551
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x70], rax
mov eax, dword [0x1402aa5c0]
xor eax, 0xd601837e
mov ecx, dword [0x1402aa5c4]
xor ecx, 0x737d68c
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x79013f45
xor edx, 0x86fec0ba
mov eax, ecx
xor eax, edx
and eax, 0xbac7e0a3
mov edx, 0xffffffff
xor edx, 0xbac7e0a3
and ecx, edx
or eax, ecx
mov ecx, eax
and ecx, 0xeb7cbe8b
xor ecx, 0xffffffff
mov edx, 0x4cf51bc0
xor edx, 0xa789a54b
add eax, edx
add eax, 1
add eax, ecx
add eax, 0xcbe96b43
mov ecx, 0x34ae906b
xor ecx, 0xea85b2eb
cmp eax, ecx
je 0x140059bfe
mov r8, qword [rsp + 0x418]
mov rdx, qword [rsp + 0x390]
mov r9, qword [rsp + 0x70]
mov r10, qword [rsp + 0x80]
mov r11d, dword [rsp + 0x2bc]
mov ecx, dword [0x1402aa5c8]
mov esi, dword [0x1402aa5cc]
mov edi, ecx
xor edi, 0xffffffff
mov eax, esi
and eax, edi
xor esi, 0xffffffff
and ecx, esi
or eax, ecx
xor eax, 0x46df386c
xor eax, 0xf0accf1f
xor eax, 0xd4c155ff
mov ecx, 0x5bbd8a0f
xor ecx, 0x1abd1516
shr r11d, 0x12
and r11b, 0x3f
mov bl, 0x32
xor bl, 0xb2
or r11b, bl
mov byte [r9 + r10 + 8], r11b
movabs r9, 0xfc518cce84347df4
movabs r10, 0x840f6de9dac9303f
xor r9, r10
sub rdx, r9
movabs r9, 0xee4a6f318c1d33d4
movabs r10, 0xee4a6f318c1d33d7
xor r9, r10
add rdx, r9
movabs r9, 0x785ee1275efd4dcb
add rdx, r9
mov qword [rsp + 0x58], rdx
mov r8, qword [r8]
mov qword [rsp + 0x60], r8
cmp rdx, r8
setl dl
mov byte [rsp + 0x6f], dl
cmp eax, ecx
je 0x1400595d0
mov al, byte [rsp + 0x6f]
test al, 1
jne 0x140059703
jmp 0x1400596b1
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
movabs rax, 0x7c268c959ed7c52e
movabs r8, 0x83d9736a61283ad1
xor rax, r8
movabs r8, 0xa45bf22f41be5d9f
movabs r9, 0x5ba40dd0be41a260
xor r8, r9
xor rax, r8
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rdx, qword [rax]
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
movabs r9, 0x4000000000000000
xor r8, r9
or rcx, r8
movabs r8, 0x4000000000000000
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
cmp rcx, 0
mov qword [rsp + 0x50], rax
je 0x140059773
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8, qword [rsp + 0x58]
mov r9d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x50]
shr r9d, 0xc
and r9b, 0x3f
or r9b, 0x80
mov byte [rdx + r8 + 8], r9b
add rax, 4
mov qword [rsp + 0x40], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x48], rcx
cmp rax, rcx
jl 0x1400597ee
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
movabs rax, 0x6b85c7fcdf62c274
movabs r8, 0x947a3803209d3d8b
xor rax, r8
add rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov rcx, qword [rax]
movabs rdx, 0xd54e7f30d270ab34
movabs r8, 0x2ab180cf2d8f54cb
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
mov r8, 0xffffffffffffffff
movabs r9, 0x9d20d522f947599
xor r8, r9
or rcx, rdx
movabs rdx, 0x21ddc61b2e5a4b68
movabs r9, 0x280fcb4901ce3ef1
xor rdx, r9
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
cmp rcx, 0
mov qword [rsp + 0x38], rax
je 0x14005988e
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x418]
mov rax, qword [rsp + 0x390]
mov r8, qword [rsp + 0x40]
mov r9d, dword [rsp + 0x2bc]
mov rdx, qword [rsp + 0x38]
shr r9d, 6
mov r10b, 0x12
xor r10b, 0x2d
and r9b, r10b
or r9b, 0x80
mov byte [rdx + r8 + 8], r9b
add rax, 5
mov qword [rsp + 0x28], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rcx
cmp rax, rcx
jl 0x1400598fe
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
call fcn.140025e55
jmp 0x1400599b8
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
movabs rcx, 0x4000000000000000
and rcx, qword [rax]
movabs rdx, 0x260a2481fac1ba3
movabs r8, 0x260a2481fac1ba3
xor rdx, r8
cmp rcx, rdx
mov qword [rsp + 0x20], rax
je 0x140059958
mov rcx, qword [rsp + 0x418]
call fcn.140027e50
mov rax, qword [rsp + 0x408]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0x28]
mov r8d, dword [rsp + 0x2bc]
mov rcx, qword [rsp + 0x20]
and r8b, 0x3f
or r8b, 0x80
mov byte [rcx + rdx + 8], r8b
mov qword [rsp + 0x278], rax
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x428]
mov rax, qword [rsp + 0x278]
cmp rcx, rdx
mov qword [rsp + 0x3a8], rcx
mov qword [rsp + 0x3b0], rax
jl 0x14005564c
mov ecx, dword [0x1402aa5d0]
mov eax, dword [0x1402aa5d4]
mov edx, 0x4b43f1cc
xor edx, 0xaa2071b5
xor eax, edx
xor ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x5f29fea9
xor r8d, 0xa0d60156
mov edx, ecx
xor edx, r8d
or eax, edx
xor eax, 0xffffffff
mov edx, 0xdbe3f6ff
xor edx, 0xab512c52
mov r8d, 0xb7bf3234
xor r8d, 0x4840cdcb
xor edx, r8d
or eax, edx
mov edx, 0xffffffff
xor edx, 0x70b2daad
mov r8d, 0xb5f45b1a
xor r8d, 0xc54681b7
mov r9d, 0xd192f361
xor r9d, 0x2e6d0c9e
xor r8d, r9d
or edx, r8d
xor ecx, 0xffffffff
mov r8d, 0xffc3762
xor r8d, 0xf003c89d
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x730607dd
xor edx, 0x8cf9f822
xor ecx, edx
or eax, ecx
mov ecx, 0x6ae398eb
xor edx, edx
div ecx
mov edx, 0xfceb48ef
xor edx, 0xfcabfe1c
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0x40b6f3
sub eax, ecx
mov ecx, 0x74e69750
xor ecx, 0x1b3f46e4
cmp eax, ecx
ja 0x140059c07
mov eax, dword [0x1402aa5d8]
mov ecx, 0x9a69582b
xor ecx, 0xc62a224a
xor eax, ecx
xor edx, edx
div dword [0x1402aa5dc]
and eax, eax
xor eax, 0xffffffff
mov ecx, 0x67cdac66
xor ecx, 0x9bc32fdf
mov edx, 0x934ae06
xor edx, 0xf6cb51f9
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xfc0e83b9
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x53a2f694
xor edx, 0xac5d096b
xor ecx, edx
or eax, ecx
mov ecx, 0x6c54eaf6
xor ecx, 0x38992c65
mov edx, 0x93f8dc52
xor edx, 0x6c0723ad
xor ecx, edx
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
xor eax, 0xc0332356
cmp eax, 0xdfa82dbf
jae 0x140059c07
mov rax, qword [rsp + 0x420]
add rsp, 0x448
pop rbx
pop rbp
pop rdi
pop rsi
ret
retf 0x8d46
sti
pop r11
jmp 0x140055932
adc byte [rsi + 0x50e95906], bh
mov edi, 0xb76ffff
jbe 0x140059b57
or eax, ebx
jmp 0x140055da1
sub ah, 0x48
int3
jmp 0x140056123
ret
cmp esi, ebp
scasb al, byte [rdi]
ret
cmp eax, dword [rdi - 0x14166506]
int3
out dx, eax
xchg ebx, eax
push rsp
sub eax, 0xffce6fe9
call [rbp - 0x160b7d93]
mov cl, 0xcf
invalid
popfq
insd dword [rdi], dx
invalid
xlatb
shl dword [rcx - 0x2ec117], 0xff
jmp 0x140056cd0
push 0x78e99124
invalid
retf
xor eax, 0xe9bb2a4c
xlatb
invalid
push 0xfffffffffffffffd
add byte [rbp - 0x17], bl
ja 0x140059b8d
invalid
and byte [rbx + 0x2e9f513], bl
invalid
cmp byte [rdi - 0x6816e754], dl
fdiv st(7), st(0)
call [rdi + 0x2f]
push 0x6d
jmp 0x1400579ab
pop rdi
invalid
push rdi
mov esi, 0x5be9aebf
out dx, al
invalid
mov rbx, qword [rcx + 0x26]
jmp 0x140058d80
or cl, byte [rax - 0x2e16e9b9]
invalid
cdq
xchg ebp, eax
int1
push rcx
jmp 0x1400590ba
fcom dword [rcx]
or byte [rsi - 0x82c17], bl
dec dword [rdx - 0x165f8f43]
leave
mov bh, byte [rbp - 0x36165f90]
stc
invalid
xor dword [rbx + 0x10], edi
sub ecx, 0xfffffe83