Function at 0x140213d30
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0x508
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x480], rcx
mov eax, dword [0x140259568]
xor edx, edx
div dword [0x14025956c]
mov ecx, 0x7927172e
xor ecx, 0x9d638daa
xor edx, edx
div ecx
mov ecx, eax
and ecx, 0x322b4906
shl ecx, 1
xor eax, 0x322b4906
add eax, ecx
or eax, 0x93bda165
mov ecx, 0x3ebbbb35
xor ecx, 0x2c8d997d
cmp eax, ecx
je 0x140216e26
mov eax, dword [0x140259570]
mov ecx, dword [0x140259574]
xor ecx, 0xc37c247
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
not eax
and eax, 0xdd6067b9
mov edx, ecx
and edx, 0x229f9846
imul edx, eax
mov eax, ecx
and eax, 0xdd6067b9
or ecx, 0xdd6067b9
imul ecx, eax
mov eax, ecx
mov ecx, edx
lea eax, [rax + rcx + 0x1dcd171c]
or eax, 0x2dd8581f
mov dword [rbp + 0x46c], eax
mov eax, 0xc4a5c2aa
mov dword [rbp + 0x468], eax
mov eax, 0x10
mov qword [rbp + 0x430], rax
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x450], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x448], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x208], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x210], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x218], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x220], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x228], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x230], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x238], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x240], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x248], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x250], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x258], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x260], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x268], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x270], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x278], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x280], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x288], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x290], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x298], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2a0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2a8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2b0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2b8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2c0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2c8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2d0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2d8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2e0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2e8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2f0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x2f8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x300], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x308], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x310], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x318], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x320], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x328], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x330], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x338], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x340], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x348], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x350], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x358], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x360], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x368], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x370], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x378], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x380], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x388], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x390], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x398], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3a0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3a8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3b0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3b8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3c0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3c8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3d0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3d8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3e0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3e8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3f0], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x3f8], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x400], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x408], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x410], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x418], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x420], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x428], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, qword [rbp + 0x430]
mov rcx, rsp
mov qword [rbp + 0x438], rcx
call fcn.14024abd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x440], rax
sub rsp, 0x20
call fcn.14021a9cb
mov rcx, qword [rbp + 0x448]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x450]
mov qword [rbp + 0x460], rdx
add rdx, 0x50
mov qword [rbp + 0x458], rdx
mov qword [rax], 0
mov word [rcx], 0x8ca
sub rsp, 0x20
call fcn.140063da0
mov rdx, qword [rbp + 0x460]
mov ecx, dword [rbp + 0x468]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp + 0x46c]
mov qword [rbp + 0x470], r8
cmp byte [rdx + 0x50], 0
sete dl
mov byte [rbp + 0x47f], dl
cmp eax, ecx
jae 0x140216e26
mov cl, byte [rbp + 0x47f]
xor eax, eax
test cl, 1
mov rcx, rax
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x1402145b6
jmp 0x140216001
mov rcx, qword [rbp + 0x248]
mov r8, qword [rbp + 0x258]
mov rdx, qword [rbp + 0x250]
mov rax, qword [rbp + 0x470]
mov r9, qword [str._j_]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.140213ca5
mov rax, qword [rbp + 0x248]
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, qword [rax]
mov qword [rbp + 0x1e8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1f0], rax
xor eax, eax
cmp byte [rcx], 0
mov rcx, rax
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
xor eax, eax
mov ecx, eax
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140018f50
mov r9, qword [rbp + 0x1e8]
mov rcx, qword [rbp + 0x260]
mov rdx, qword [rbp + 0x268]
mov r8, qword [rbp + 0x1f0]
add rsp, 0x20
mov qword [rcx], r9
mov qword [rcx + 8], r8
mov qword [rdx], 0
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140164ca3
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1e0], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x1e0]
mov rax, qword [rbp + 0x450]
mov qword [rax], rcx
mov edx, 1
sub rsp, 0x20
call fcn.140165dba
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1d8], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x208]
mov word [rcx], 0x339
sub rsp, 0x20
call fcn.140063da0
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1d0], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov ecx, 4
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140018f50
add rsp, 0x20
mov qword [rbp + 0x1b8], rax
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp + 0x210]
add rsp, 0x20
mov qword [rbp + 0x1c0], rax
mov word [rcx], 0x420
sub rsp, 0x20
call fcn.140063da0
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1c8], rdx
mov dl, byte [rcx]
mov r8b, 0xbc
xor r8b, 0xbc
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x270]
mov rdx, qword [rbp + 0x278]
mov rax, qword [rbp + 0x1c8]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rcx, qword [rbp + 0x270]
mov rax, qword [rbp + 0x1c0]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x85a
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp + 0x1c0]
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rcx + 0x10], r8d
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov ecx, 0x295
sub rsp, 0x20
call fcn.1400644d0
mov rdx, qword [rbp + 0x1c0]
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rdx + 0x14], r8d
mov dl, byte [rcx]
mov r8b, 0x70
xor r8b, 0x70
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x1c0]
mov qword [rax + 8], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp + 0x218]
add rsp, 0x20
mov qword [rbp + 0x1a8], rax
mov word [rcx], 0xbeb
sub rsp, 0x20
call fcn.140063da0
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1b0], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x280]
mov rdx, qword [rbp + 0x288]
mov rax, qword [rbp + 0x1b0]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rcx, qword [rbp + 0x280]
mov rax, qword [rbp + 0x1a8]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x6d1
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp + 0x1a8]
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rcx + 0x10], r8d
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov ecx, 0x9cf
sub rsp, 0x20
call fcn.1400644d0
mov rdx, qword [rbp + 0x1a8]
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rdx + 0x14], r8d
mov dl, byte [rcx]
mov r8b, 0x4d
xor r8b, 0x4d
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x1a8]
mov qword [rax + 0x10], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp + 0x220]
add rsp, 0x20
mov qword [rbp + 0x198], rax
mov word [rcx], 0x734
sub rsp, 0x20
call fcn.140063da0
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x1a0], rdx
mov dl, byte [rcx]
mov r8b, 0x2a
xor r8b, 0x2a
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov ecx, dword [0x140259578]
sub ecx, dword [0x14025957c]
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
mov edx, 0x93666619
xor edx, 0x6c9999e6
xor eax, edx
mov edx, 0xffffffff
xor edx, 0xed0b98cb
or eax, edx
mov edx, 0xed0b98cb
and edx, 0xed0b98cb
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
mov edx, 0x33a09b9
xor edx, 0xfcc5f646
xor ecx, edx
or eax, ecx
mov ecx, 0x79c88b8e
xor edx, edx
div ecx
mov ecx, 0xaf30fe4b
xor ecx, 0xac223c8c
xor eax, ecx
cmp eax, 0xb8a64c20
je 0x140216e2f
mov rcx, qword [rbp + 0x290]
mov edx, dword [0x140259580]
imul edx, dword [0x140259584]
mov eax, edx
and eax, 0xae5fbfb4
xor eax, 0xffffffff
and edx, 0xae5fbfb4
xor edx, 0xffffffff
and eax, edx
mov edx, 0x529aacb5
xor edx, 0xad65534a
xor eax, edx
xor eax, 0x89bfd7fe
mov r8d, 0x89e8ef1b
xor r8d, 0x2eec7b24
xor edx, edx
div r8d
mov rdx, qword [rbp + 0x298]
mov r8d, eax
mov rax, qword [rbp + 0x1a0]
mov dword [rbp + 0x190], r8d
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rcx, qword [rbp + 0x290]
mov rax, qword [rbp + 0x198]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0x1d4
sub rsp, 0x20
call fcn.1400644d0
mov rdx, qword [rbp + 0x198]
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp + 0x190]
mov dword [rdx + 0x10], r8d
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x197], cl
cmp eax, 0x6b51b895
ja 0x140216e2f
mov rax, qword [rbp + 0x1f0]
mov dl, byte [rbp + 0x197]
xor ecx, ecx
test dl, 1
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140214c39
jmp 0x140216001
mov cx, 0xa1a9
xor cx, 0xac31
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp + 0x198]
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rcx + 0x14], r8d
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rax, qword [rbp + 0x1b8]
mov rcx, qword [rbp + 0x198]
mov qword [rax + 0x18], rcx
movabs rcx, 0xd0049d35165c2099
movabs rax, 0xd0049d35165c2081
xor rcx, rax
movabs rdx, 0x7c039959d9d1b2f3
movabs rax, 0x7c039959d9d1b2fb
xor rdx, rax
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp + 0x228]
add rsp, 0x20
mov qword [rbp + 0x180], rax
mov word [rcx], 0x966
sub rsp, 0x20
call fcn.140063da0
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x188], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x2a0]
mov rdx, qword [rbp + 0x2a8]
mov rax, qword [rbp + 0x188]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rcx, qword [rbp + 0x2a0]
mov rax, qword [rbp + 0x180]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xcd9
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp + 0x180]
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rcx + 0x10], r8d
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov cx, 0xbe8d
xor cx, 0xb815
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp + 0x180]
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rcx + 0x14], r8d
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov eax, dword [0x140259588]
mov ecx, dword [0x14025958c]
xor ecx, 0xf3cd1468
xor eax, ecx
mov ecx, eax
xor ecx, 0xae45e5f9
mov edx, 0x40f6dc90
xor edx, 0xbf09236f
xor ecx, edx
or eax, 0xae45e5f9
and eax, ecx
or eax, 0x1a8cd69e
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x97d3db61
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x613787e4
xor ecx, 0xc303d1a9
cmp eax, ecx
je 0x140216e38
mov r8, qword [rbp + 0x2b8]
mov rdx, qword [rbp + 0x2b0]
mov rcx, qword [rbp + 0x1d8]
mov rax, qword [rbp + 0x1b8]
mov r9, qword [rbp + 0x1d0]
mov r10, qword [rbp + 0x180]
mov esi, dword [0x140259590]
mov edi, dword [0x140259594]
xor edi, 0x347e55d9
mov r11d, 0x249c43b
xor r11d, 0xfdb63bc4
mov ebx, esi
xor ebx, r11d
mov r11d, edi
and r11d, ebx
xor edi, 0xffffffff
and esi, edi
or r11d, esi
or r11d, 0xf34ad036
sub r11d, 0x994a414f
mov esi, 0x379c7cda
xor esi, 0x354dee00
and r11d, esi
mov dword [rbp + 0x16c], r11d
mov qword [rax + 0x20], r10
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov qword [r8], 4
mov qword [r8 + 8], rax
mov r9d, 0x3eec73ef
xor r9d, 0x3eec73ee
sub rsp, 0x20
call fcn.140165660
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp + 0x16c]
mov qword [rbp + 0x170], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x17f], cl
cmp eax, 0x15152fd3
je 0x140214e59
mov rax, qword [rbp + 0x1f0]
mov dl, byte [rbp + 0x17f]
xor ecx, ecx
test dl, 1
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140214f68
jmp 0x140216001
mov rdx, qword [rbp + 0x170]
mov rcx, qword [rbp + 0x450]
sub rsp, 0x20
call fcn.14016511d
mov rcx, qword [rbp + 0x458]
mov rax, qword [rbp + 0x1f0]
add rsp, 0x20
mov dl, byte [rcx]
mov r8b, 0x3d
xor r8b, 0x3d
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x450]
mov rax, qword [rcx]
mov qword [rbp + 0x160], rax
sub rsp, 0x20
call fcn.140164c9b
mov rdx, qword [rbp + 0x458]
mov rax, qword [rbp + 0x1f0]
add rsp, 0x20
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x230]
mov word [rcx], 0xe65
sub rsp, 0x20
call fcn.140063da0
mov rdx, qword [rbp + 0x458]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x158], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x2c0]
mov rdx, qword [rbp + 0x2c8]
mov rax, qword [rbp + 0x158]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rdx, qword [rbp + 0x2c0]
mov r9, qword [rbp + 0x480]
mov rax, qword [rbp + 0x2d0]
mov rcx, qword [rbp + 0x2d8]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rdx + 8]
mov r9, qword [r9]
add r9, 0x18
mov qword [rbp + 0x148], r9
mov qword [rax], r8
mov qword [rax + 8], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp + 0x148]
mov rdx, qword [rbp + 0x160]
mov r8, qword [rbp + 0x2d0]
mov rax, qword [rbp + 0x2d8]
add rsp, 0x20
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140176040
mov rdx, qword [rbp + 0x458]
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x1f0]
mov dword [rbp + 0x154], ecx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov ecx, 0x95e
sub rsp, 0x20
call fcn.140063c67
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x140], rdx
mov dl, byte [rcx]
mov r8b, 0x43
xor r8b, 0x43
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov ecx, dword [0x140259598]
imul ecx, dword [0x14025959c]
xor ecx, 0x20c4ace0
mov edx, 0xf3357fe3
xor edx, 0xf5ec4f5f
mov eax, ecx
and eax, edx
xor ecx, 0x6d930bc
or eax, ecx
mov ecx, 0x19954fd8
xor ecx, 0x3d36f0b1
xor edx, edx
div ecx
cmp eax, 0xbd13ec36
je 0x140216e41
mov rcx, qword [rbp + 0x140]
mov eax, dword [0x1402595a0]
mov edx, dword [0x1402595a4]
mov r8d, 0xc3482144
xor r8d, 0xbf34ca1d
xor edx, r8d
or eax, edx
mov r8d, 0x713845c6
xor edx, edx
div r8d
mov edx, dword [rbp + 0x154]
xor eax, 0x2d25373
xor eax, 0xb61f9d9
movsxd rdx, edx
cmp rcx, rdx
setl cl
mov byte [rbp + 0x13f], cl
cmp eax, 0xe51f0c9c
jae 0x140216e41
mov al, byte [rbp + 0x13f]
test al, 1
jne 0x14021521c
jmp 0x14021522d
mov rax, qword [rbp + 0x480]
mov rax, qword [rax]
mov rax, qword [rax + 0x40]
mov byte [rax], 1
mov rcx, qword [rbp + 0x238]
mov word [rcx], 0x981
sub rsp, 0x20
call fcn.140063da0
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x130], rdx
mov dl, byte [rcx]
mov r8b, 0xc6
xor r8b, 0xc6
xor ecx, ecx
cmp dl, r8b
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x2e0]
mov r8, qword [rbp + 0x2f0]
mov rdx, qword [rbp + 0x2e8]
mov rax, qword [rbp + 0x130]
mov r9, qword [str._j_]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.140213ca5
mov rcx, qword [rbp + 0x2e0]
mov rdx, qword [rbp + 0x458]
mov rax, qword [rbp + 0x1f0]
add rsp, 0x20
mov r8, qword [rcx]
mov qword [rbp + 0x120], r8
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x128], rcx
xor ecx, ecx
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov rcx, qword [rbp + 0x240]
mov ax, 0xf187
xor ax, 0xfd1b
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063da0
mov rdx, qword [rbp + 0x458]
mov rcx, qword [rbp + 0x128]
add rsp, 0x20
mov r8, rax
mov rax, qword [rbp + 0x1f0]
mov qword [rbp + 0x118], r8
cmp byte [rdx], 0
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x140216001
mov ecx, dword [0x1402595a8]
mov eax, dword [0x1402595ac]
xor eax, 0xcf8a40e6
sub ecx, eax
mov eax, ecx
and eax, 0x7273c4f7
xor eax, 0xffffffff
and ecx, 0x7273c4f7
mov edx, 0xe58cfd0
xor edx, 0xf1a7302f
xor ecx, edx
mov edx, 0x2a54756f
xor edx, 0xd5ab8a90
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x1ffc4f2c
xor edx, edx
div ecx
sub eax, 0xf7d335fe
cmp eax, 0xc67380c9
je 0x140216e4a
mov rcx, qword [rbp + 0x2f8]
mov r8, qword [rbp + 0x308]
mov rdx, qword [rbp + 0x300]
mov rax, qword [rbp + 0x118]
mov r9d, dword [0x1402595b0]
sub r9d, dword [0x1402595b4]
xor r9d, 0x3f74025
add r9d, 0xb1a50d76
sub r9d, 0x4f9fd041
sub r9d, 0xb1a50d76
mov r10d, 0xacc391e8
xor r10d, 0x70db0538
mov r11d, 0x5df55e3a
xor r11d, 0xa20aa1c5
xor r10d, r11d
add r9d, r10d
add r9d, 1
mov dword [rbp + 0xfc], r9d
mov r9, qword [str._j_]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.140213ca5
mov rdx, qword [rbp + 0x2f8]
mov rcx, qword [rbp + 0x458]
mov eax, dword [rbp + 0xfc]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0x100], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0x108], rdx
mov cl, byte [rcx]
mov dl, 0xfb
xor dl, 0xfb
cmp cl, dl
sete cl
mov byte [rbp + 0x117], cl
cmp eax, 0x1a3d8062
je 0x140216e4a
mov rax, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x128]
mov dl, byte [rbp + 0x117]
test dl, 1
mov qword [rbp + 0x1f8], rcx
mov qword [rbp + 0x200], rax
jne 0x1402154d6
jmp 0x140216001
mov rcx, qword [rbp + 0x310]
mov rdx, qword [rbp + 0x318]
mov rax, qword [rbp + 0x128]
mov r8, qword [rbp + 0x120]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rax, qword [rbp + 0x310]
mov rcx, qword [rbp + 0x320]
add rsp, 0x20
mov rdx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400cd2a0
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x458]
mov al, byte [rax]
test al, al
sete al
and al, cl
test al, 1
jne 0x14021554e
jmp 0x140216034
mov rcx, qword [rbp + 0x328]
mov rdx, qword [rbp + 0x330]
mov rax, qword [rbp + 0x108]
mov r8, qword [rbp + 0x100]
mov qword [rdx], r8
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rax, qword [rbp + 0x328]
mov rcx, qword [rbp + 0x338]
add rsp, 0x20
mov rdx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rcx], rdx
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.1400cd2a0
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x458]
mov al, byte [rax]
test al, al
sete al
and al, cl
test al, 1
jne 0x1402155c6
jmp 0x140216034
mov rcx, qword [rbp + 0x340]
mov rdx, qword [rbp + 0x348]
mov rax, qword [rbp + 0x128]
mov r8, qword [rbp + 0x120]
mov qword [rdx], r8
mov qword [rdx + 8], rax
xor eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400c82d0
mov rcx, qword [rbp + 0x340]
mov rax, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0xe8], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0xf0], rcx
cmp byte [rax], 0
jne 0x140216034
mov rcx, qword [rbp + 0x350]
mov word [rcx], 0x53d
sub rsp, 0x20
call fcn.140063da0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp + 0xe0], rcx
cmp byte [rax], 0
jne 0x140215fb4
mov rdx, qword [rbp + 0x360]
mov rcx, qword [rbp + 0x358]
mov rax, qword [rbp + 0xe0]
mov r8, qword [rbp + 0xf0]
mov r9, qword [rbp + 0xe8]
mov qword [rcx], r9
mov qword [rcx + 8], r8
movups xmm0, xmmword [rax]
movups xmmword [rdx], xmm0
sub rsp, 0x20
call fcn.140041603
add rsp, 0x20
mov cl, al
mov rax, qword [rbp + 0x458]
mov al, byte [rax]
test al, al
sete al
and al, cl
test al, 1
jne 0x1402156b6
jmp 0x140215fb9
mov eax, dword [0x1402595b8]
mov ecx, 0x52a22c25
xor ecx, 0x1bb1f92b
xor eax, ecx
imul eax, dword [0x1402595bc]
mov ecx, 0x8c82809f
xor edx, edx
div ecx
mov ecx, 0xdffa821d
xor edx, edx
div ecx
mov r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x7a0c9dcc
mov edx, 0xffffffff
xor edx, 0x7a0c9dcc
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0xc91d20a8
and ecx, 0x7a0c9dcc
and edx, 0xc91d20a8
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0x22d5d8a8
jbe 0x140216e53
mov rcx, qword [rbp + 0x368]
mov rdx, qword [rbp + 0x370]
mov rax, qword [rbp + 0x108]
mov r8, qword [rbp + 0x100]
mov esi, dword [0x1402595c0]
or esi, dword [0x1402595c4]
mov r9d, esi
xor r9d, 0xffffffff
and r9d, 0x50ffceb5
mov r11d, 0xffffffff
xor r11d, 0x50ffceb5
and esi, r11d
mov r10d, 0xffffffff
xor r10d, 0x3283e117
and r10d, 0x50ffceb5
and r11d, 0x3283e117
or r9d, esi
or r10d, r11d
xor r9d, r10d
mov r10d, r9d
and r10d, 0xb4845443
shl r10d, 1
add r9d, 0xb4845443
sub r9d, r10d
xor r9d, 0xf8c49017
mov dword [rbp + 0xc4], r9d
mov qword [rdx], r8
mov qword [rdx + 8], rax
xor eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400c82d0
mov rdx, qword [rbp + 0x368]
mov rcx, qword [rbp + 0x458]
mov eax, dword [rbp + 0xc4]
add rsp, 0x20
mov r8, qword [rdx]
mov qword [rbp + 0xc8], r8
mov rdx, qword [rdx + 8]
mov qword [rbp + 0xd0], rdx
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0xdf], cl
cmp eax, 0xc3da04e2
ja 0x140215727
mov al, byte [rbp + 0xdf]
test al, 1
jne 0x140215823
jmp 0x140215fb4
sub rsp, 0x20
mov cx, 0x2e8
call fcn.140063c67
mov rdx, qword [rbp + 0xc8]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov al, byte [rax]
test al, al
sete al
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140215861
jmp 0x140215db5
mov ecx, 0xd53
sub rsp, 0x20
call fcn.140063c67
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp + 0xb8], rcx
cmp byte [rax], 0
jne 0x140215db5
mov ecx, 0x66b
sub rsp, 0x20
call fcn.140063c67
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp + 0xb0], rcx
cmp byte [rax], 0
jne 0x140215db5
mov rdx, qword [rbp + 0xb0]
mov r9, qword [rbp + 0xc8]
mov rax, rdx
xor rax, 0xffffffffffffffff
mov rcx, r9
add rcx, rax
add rcx, 1
mov qword [rbp + 0xa8], rcx
mov r8, rcx
and r8, r9
shl r8, 1
mov rax, rcx
add rax, r9
sub rax, r8
movabs r8, 0xc42a1424df0965fe
movabs r9, 0xc42a1424df0965fe
xor r8, r9
cmp rax, r8
setl al
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg dl
xor ecx, ecx
xor cl, 1
xor al, cl
xor dl, 0xff
mov cl, 1
xor cl, 1
xor r8d, r8d
xor r8b, 1
xor cl, r8b
or al, dl
or cl, 0
xor edx, edx
xor dl, 1
xor al, dl
and al, cl
test al, 1
jne 0x14021594d
jmp 0x140215a9b
mov eax, dword [0x1402595c8]
mov ecx, 0x93fd01b6
xor ecx, 0xab2d60b2
xor eax, ecx
mov ecx, dword [0x1402595cc]
mov edx, 0xe2afab69
xor edx, 0x87d54e06
xor ecx, edx
xor edx, edx
div ecx
mov ecx, 0x15770351
xor ecx, 0xa1911459
mov edx, eax
xor edx, ecx
mov ecx, 0xb9e1f47
xor ecx, 0xf461e0b8
xor edx, ecx
mov ecx, 0x8ecad45c
xor ecx, 0x3a2cc354
and ecx, edx
shl ecx, 1
sub ecx, 0xb4e61708
sub eax, ecx
sub eax, 0xaf408b7c
mov ecx, 0xffffffff
xor ecx, 0x4b6bc6c3
mov edx, 0x83853b85
xor edx, 0x83853b85
mov r8d, 0xcaa6efb4
xor r8d, 0xcaa6efb5
sub edx, r8d
sub ecx, edx
sub eax, ecx
mov ecx, 0xc17244c8
xor ecx, 0x14b0bc00
cmp eax, ecx
ja 0x140216e5c
mov eax, dword [0x1402595d0]
mov r8d, dword [0x1402595d4]
mov ecx, 0x6cb0b60e
xor ecx, 0x934f49f1
mov r9d, r8d
xor r9d, ecx
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
mov r9d, 0x7e2e2532
xor r9d, 0x81d1dacd
xor ecx, r9d
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov edx, eax
and edx, 0x245387e1
mov ecx, 0x91353210
xor ecx, 0x91353212
imul ecx, edx
mov edx, 0xfa1ab66c
xor edx, 0xde49318d
add eax, edx
sub eax, ecx
mov ecx, 0x16a1e445
xor edx, edx
div ecx
sub eax, 0xcc69c97b
add eax, 0xb803a37a
add eax, 0xcc69c97b
mov dword [rbp + 0xa4], eax
sub rsp, 0x20
call fcn.140008c92
mov eax, dword [rbp + 0xa4]
add rsp, 0x20
cmp eax, 0xa6fedf95
jb 0x1402159ed
jmp 0x140215db5
mov rcx, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xa8]
sub rax, rcx
mov qword [rbp + 0x98], rax
movabs rcx, 0xab0fc9f35438bef2
movabs rdx, 0x54f0360cabc7410d
xor rcx, rdx
cmp rax, rcx
je 0x140215b40
mov rax, qword [rbp + 0xb8]
cmp rax, 0
jl 0x140215b19
mov rdx, qword [rbp + 0xc8]
mov rcx, qword [rbp + 0xa8]
mov rax, qword [rbp + 0xb8]
sub rax, rdx
setl al
test rcx, rcx
setns r8b
and al, r8b
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140215b40
mov r8, qword [rbp + 0xc8]
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0xb8]
sub rsp, 0x20
call fcn.14001ccfb
add rsp, 0x20
jmp 0x140215db5
mov rcx, qword [rbp + 0x378]
mov r8, qword [rbp + 0x98]
mov r9, qword [rbp + 0xd0]
mov rax, qword [rbp + 0xb8]
mov rdx, r9
add rdx, 8
add rdx, rax
xor eax, eax
cmp r9, 0
cmove rdx, rax
mov rax, r8
and rax, 1
movabs r9, 0xf2394ec8f7e65032
movabs r10, 0xf2394ec8f7e65030
xor r9, r10
imul rax, r9
xor r8, 1
add r8, rax
sub rsp, 0x20
call fcn.14017f060
mov rcx, qword [rbp + 0x378]
mov rax, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 0x88], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x90], rcx
cmp byte [rax], 0
jne 0x140215db5
mov eax, dword [0x1402595d8]
xor edx, edx
div dword [0x1402595dc]
mov ecx, 0x44ad767c
xor edx, edx
div ecx
xor eax, 0x298e57c1
xor ecx, ecx
sub ecx, 0xba824a9
add eax, ecx
cmp eax, 0x6c0fba2f
jae 0x140216e65
mov rcx, qword [rbp + 0x88]
mov eax, dword [0x1402595e0]
mov edx, dword [0x1402595e4]
xor edx, 0xffffffff
add eax, edx
mov edx, 0xf580a08
xor edx, 0xf580a09
add eax, edx
or eax, 0xffb3b553
mov edx, 0x28decf89
xor edx, 0x4191d530
sub eax, edx
xor eax, 0xab56436c
cmp rcx, 0
sete cl
mov byte [rbp + 0x87], cl
cmp eax, 0x55f06de9
je 0x140215c03
mov al, byte [rbp + 0x87]
test al, 1
jne 0x140215d5c
jmp 0x140215c6a
mov rcx, qword [rbp + 0x380]
mov word [rcx], 0x513
sub rsp, 0x20
call fcn.140063da0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp + 0x78], rcx
cmp byte [rax], 0
jne 0x140215d5c
mov rcx, qword [rbp + 0x388]
mov edx, 8
sub rsp, 0x20
call fcn.14020b650
mov rcx, qword [rbp + 0x480]
mov r10, qword [rbp + 0x78]
mov r9, qword [rbp + 0x88]
mov rax, qword [rbp + 0x90]
mov rdx, qword [rbp + 0x390]
mov r8, qword [rbp + 0x398]
add rsp, 0x20
mov rcx, qword [rcx]
add rcx, 0x18
mov r11, qword [r10]
mov qword [rdx], r11
mov r10, qword [r10 + 8]
mov qword [rdx + 8], r10
mov qword [r8], r9
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.14013bd70
mov rcx, qword [rbp + 0x388]
add rsp, 0x20
mov rdx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp + 0x70], rdx
mov qword [rcx], rdx
mov al, byte [rax]
mov cl, 0x5d
xor cl, 0x5d
cmp al, cl
jne 0x140215d5c
mov rcx, qword [rbp + 0x70]
sub rsp, 0x20
call fcn.14009b330
mov rax, qword [rbp + 0x458]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140215d5c
mov rax, qword [rbp + 0x480]
mov rax, qword [rax]
mov rax, qword [rax + 0x40]
mov byte [rax], 1
mov rax, qword [rbp + 0x90]
cmp rax, 0
je 0x140215db5
mov rcx, qword [rbp + 0x90]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0xa9f939eb27660c7f
movabs rdx, 0xa9f939eb27660c7f
xor rcx, rdx
cmp rax, rcx
jne 0x140215db5
mov rcx, qword [rbp + 0x90]
sub rsp, 0x20
call fcn.14000eec9
add rsp, 0x20
mov rax, qword [rbp + 0xd0]
cmp rax, 0
je 0x140215fb4
mov rax, qword [rbp + 0xd0]
mov rax, qword [rax]
xor rax, 0xffffffffffffffff
movabs rcx, 0xf40a1b625f3ee0a5
movabs rdx, 0xb40a1b625f3ee0a5
xor rcx, rdx
movabs rdx, 0xf8d4e9436a17cac7
movabs r8, 0x72b16bc95e83538
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x6eae9cbd477037a7
xor rdx, r8
or rax, rcx
movabs rcx, 0x8fc26df1ccec31c6
movabs r8, 0xe16cf14c8b9c0661
xor rcx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jne 0x140215fb4
mov r8d, dword [0x1402595e8]
mov eax, 0xb78a5cd6
xor eax, 0x155f59cf
xor r8d, eax
mov eax, dword [0x1402595ec]
add r8d, 0x802c1007
add r8d, eax
sub r8d, 0x802c1007
mov eax, r8d
xor eax, 0xffffffff
mov ecx, 0x886319c2
xor ecx, 0x80fc6de9
and ecx, eax
mov edx, 0xffffffff
xor edx, 0x89f742b
and r8d, edx
mov eax, 0xffffffff
xor eax, 0x27b315ad
and eax, 0x89f742b
and edx, 0x27b315ad
or ecx, r8d
or eax, edx
xor ecx, eax
mov edx, 0x5933c580
xor edx, 0xa6cc3a7f
mov eax, ecx
xor eax, edx
and eax, 0xd7ba6460
mov edx, 0xffffffff
xor edx, 0xd7ba6460
and ecx, edx
sub ecx, eax
mov eax, ecx
and eax, eax
xor eax, 0xffffffff
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x3c0db9ed
or eax, edx
mov edx, 0x115a0b2
xor edx, 0x3d18195f
mov r8d, 0x8bac8688
xor r8d, 0x74537977
xor edx, r8d
mov r8d, 0xb99ac1c3
xor r8d, 0x8597782e
mov r9d, 0x2bab07da
xor r9d, 0xd454f825
xor r8d, r9d
or edx, r8d
and ecx, edx
mov edx, 0x31e8e1b2
xor edx, 0xce171e4d
xor ecx, edx
and eax, ecx
xor eax, 0xffffffff
cmp eax, 0xac91a561
je 0x140216e6e
mov rcx, qword [rbp + 0xd0]
mov eax, dword [0x1402595f0]
mov r8d, dword [0x1402595f4]
xor r8d, 0x5b38b2c7
xor edx, edx
sub edx, r8d
add eax, edx
mov edx, 0x955abcb3
xor edx, 0x6867bb53
sub eax, edx
mov edx, 0x914090b
xor edx, 0xcbb61a80
add eax, edx
sub eax, 0x121b335b
mov dword [rbp + 0x6c], eax
mov eax, 0x17ad98ff
xor eax, 0x7e82a1ea
mov dword [rbp + 0x68], eax
sub rsp, 0x20
call fcn.14000eec9
mov ecx, dword [rbp + 0x68]
mov eax, dword [rbp + 0x6c]
add rsp, 0x20
cmp eax, ecx
je 0x140216e6e
jmp 0x140215fb4
jmp 0x140215fb9
mov rax, qword [rbp + 0xf0]
cmp rax, 0
je 0x140216034
mov rcx, qword [rbp + 0xf0]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140216034
mov rcx, qword [rbp + 0xf0]
sub rsp, 0x20
call fcn.14000eec9
add rsp, 0x20
jmp 0x140216034
mov rax, qword [rbp + 0x458]
mov rcx, qword [rbp + 0x1f8]
mov rdx, qword [rbp + 0x200]
mov byte [rax], 0
xor eax, eax
mov r8b, al
mov al, 1
mov byte [rbp + 0x4f], r8b
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], rcx
mov byte [rbp + 0x67], al
jmp 0x140216115
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x1f0]
mov r9, qword [rbp + 0x108]
mov r10, qword [rbp + 0x458]
mov al, byte [r10]
mov byte [rbp + 0x4d], al
mov r8b, 0x3b
xor r8b, 0x3b
cmp al, r8b
sete r8b
mov byte [rbp + 0x4e], r8b
mov byte [r10], 0
cmp r9, 0
mov byte [rbp + 0x4f], r8b
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], rcx
mov byte [rbp + 0x67], al
je 0x140216115
mov al, byte [rbp + 0x4d]
mov rcx, qword [rbp + 0x128]
mov rdx, qword [rbp + 0x1f0]
mov r8b, byte [rbp + 0x4e]
mov r10, qword [rbp + 0x108]
movabs r9, 0x4000000000000000
and r9, qword [r10]
movabs r10, 0xb0962b321ac6a645
movabs r11, 0xb0962b321ac6a645
xor r10, r11
cmp r9, r10
mov byte [rbp + 0x4f], r8b
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], rcx
mov byte [rbp + 0x67], al
jne 0x140216115
mov rcx, qword [rbp + 0x108]
sub rsp, 0x20
call fcn.14000eec9
mov r8b, byte [rbp + 0x4e]
mov rdx, qword [rbp + 0x1f0]
mov rcx, qword [rbp + 0x128]
mov al, byte [rbp + 0x4d]
add rsp, 0x20
mov byte [rbp + 0x4f], r8b
mov qword [rbp + 0x50], rdx
mov qword [rbp + 0x58], rcx
mov byte [rbp + 0x67], al
mov cl, byte [rbp + 0x4f]
mov rdx, qword [rbp + 0x50]
mov rax, qword [rbp + 0x58]
mov r8b, byte [rbp + 0x67]
mov byte [rbp + 0x37], r8b
mov qword [rbp + 0x38], rax
mov qword [rbp + 0x40], rdx
mov byte [rbp + 0x4c], cl
cmp rax, 0
je 0x1402161b5
mov rax, qword [rbp + 0x38]
mov rcx, qword [rax]
mov rax, rcx
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rax, rdx
xor rcx, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
or rcx, rdx
and rax, rcx
movabs rcx, 0xd1caf45072d0f782
movabs rdx, 0x2e350baf8d2f087d
xor rcx, rdx
xor rax, rcx
cmp rax, 0
jne 0x1402161b5
mov rcx, qword [rbp + 0x38]
sub rsp, 0x20
call fcn.14000eec9
add rsp, 0x20
mov rax, qword [rbp + 0x40]
cmp rax, 0
je 0x140216215
mov rax, qword [rbp + 0x40]
mov rax, qword [rax]
movabs rcx, 0xd7d27efa8b392d54
movabs rdx, 0x97d27efa8b392d54
xor rcx, rdx
and rax, rcx
movabs rcx, 0x1965352def6b1496
movabs rdx, 0x1965352def6b1496
xor rcx, rdx
cmp rax, rcx
jne 0x140216215
mov rcx, qword [rbp + 0x40]
sub rsp, 0x20
call fcn.14000eec9
add rsp, 0x20
mov rax, qword [rbp + 0x450]
mov rcx, qword [rax]
sub rsp, 0x20
call fcn.140164c2a
mov rax, qword [rbp + 0x458]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x8c
xor cl, 0x8c
cmp al, cl
jne 0x14021625d
mov al, byte [rbp + 0x37]
mov cl, byte [rbp + 0x4c]
mov rdx, qword [rbp + 0x458]
mov byte [rdx], al
test cl, 1
mov byte [rbp + 0x36], al
jne 0x140216435
sub rsp, 0x20
call fcn.14020be7b
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp + 0x28], rax
mov ax, word [rax + 0x12]
mov cx, 0xdef1
xor cx, 0xdef0
cmp ax, cx
jle 0x140216429
mov rax, qword [rbp + 0x28]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x140216429
mov r11d, dword [0x1402595f8]
imul r11d, dword [0x1402595fc]
mov eax, 0xdc6b8f70
xor eax, 0x2394708f
mov ecx, r11d
xor ecx, eax
mov r8d, 0x5e62a990
xor r8d, 0xd0bbebff
mov eax, 0x3b091ead
xor eax, 0xc4f6e152
xor r8d, eax
mov edx, 0xffffffff
xor edx, 0x1e5fe5c7
mov eax, ecx
and eax, 0x1e5fe5c7
and r11d, edx
mov r9d, r8d
and r9d, 0x1e5fe5c7
mov r10d, edx
and r10d, 0x8ed9426f
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0xf93c36a4
xor r8d, 0x6c3c95b
xor ecx, r8d
or edx, 0x1e5fe5c7
and ecx, edx
or eax, ecx
or eax, 0xe92522e0
sub eax, 0x4369d13f
sub eax, 0xd2558b8d
mov ecx, 0x6648785f
xor ecx, 0x2521a960
add eax, ecx
mov ecx, 0x452e33bb
xor ecx, 0xebba1465
cmp eax, ecx
je 0x140216e77
mov rax, qword [rbp + 0x458]
mov ecx, dword [0x140259600]
mov edx, dword [0x140259604]
mov r8d, 0x473cc405
xor r8d, 0x2184288a
xor edx, r8d
xor ecx, edx
imul ecx, ecx, 0x94476e48
mov edx, ecx
xor edx, 0xd3136f18
mov r8d, 0x6eae5455
xor r8d, 0x9151abaa
xor edx, r8d
mov r8d, 0x8b7ab358
xor r8d, 0x5869dc40
or ecx, r8d
and ecx, edx
mov edx, 0xb7e2b041
xor edx, 0xa5827adb
add ecx, edx
sub ecx, 0x7e064169
mov edx, 0x1135c636
xor edx, 0x3550cac
sub ecx, edx
mov dword [rbp + 0x20], ecx
mov cl, 0x71
xor cl, 0x71
mov byte [rax], cl
sub rsp, 0x20
call fcn.14020be8d
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140099ce0
mov rcx, qword [rbp + 0x458]
mov eax, dword [rbp + 0x20]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp + 0x27], cl
cmp eax, 0x10225186
jbe 0x140216352
mov al, byte [rbp + 0x27]
test al, 1
jne 0x14021641c
jmp 0x140216440
sub rsp, 0x20
call fcn.14020bee1
add rsp, 0x20
mov rax, qword [rbp + 0x458]
mov al, byte [rax]
mov byte [rbp + 0x36], al
mov al, byte [rbp + 0x36]
cmp al, 0
je 0x140216445
jmp 0x140216e1a
mov rcx, qword [rbp + 0x3a0]
mov word [rcx], 0x6a1
sub rsp, 0x20
call fcn.140063da0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp + 0x18], rcx
cmp byte [rax], 0
jne 0x140216d9e
mov rcx, qword [rbp + 0x3c8]
mov r8, qword [rbp + 0x3d8]
mov rdx, qword [rbp + 0x3d0]
mov rax, qword [rbp + 0x18]
mov r9, qword [0x1402648d8]
mov r10, qword [r9]
mov qword [rdx], r10
mov r9, qword [r9 + 8]
mov qword [rdx + 8], r9
mov r9, qword [rax]
mov qword [r8], r9
mov rax, qword [rax + 8]
mov qword [r8 + 8], rax
sub rsp, 0x20
call fcn.140213ca5
mov rcx, qword [rbp + 0x3c8]
mov rax, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, qword [rcx]
mov qword [rbp + 8], rdx
mov rcx, qword [rcx + 8]
mov qword [rbp + 0x10], rcx
cmp byte [rax], 0
jne 0x140216d9e
mov ecx, 3
mov r8d, 8
sub rsp, 0x20
mov rdx, r8
call fcn.140018f50
add rsp, 0x20
mov qword [rbp - 0x10], rax
movabs rcx, 0x9834720708c14aec
movabs rax, 0x9834720708c14af4
xor rcx, rax
movabs rdx, 0x992803203b0f5163
movabs rax, 0x992803203b0f516b
xor rdx, rax
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp + 0x3a8]
add rsp, 0x20
mov qword [rbp - 8], rax
mov word [rcx], 0xde1
sub rsp, 0x20
call fcn.140063da0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp], rcx
cmp byte [rax], 0
jne 0x140216d54
mov rcx, qword [rbp + 0x3e0]
mov rdx, qword [rbp + 0x3e8]
mov rax, qword [rbp]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rcx, qword [rbp + 0x3e0]
mov rax, qword [rbp - 8]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov cx, 0xa0ea
xor cx, 0xa1b9
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x458]
mov dword [rcx + 0x10], edx
mov al, byte [rax]
mov cl, 0xc8
xor cl, 0xc8
cmp al, cl
jne 0x140216d54
mov cx, 0xbeed
xor cx, 0xb371
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp - 8]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x458]
mov dword [rcx + 0x14], edx
cmp byte [rax], 0
jne 0x140216d54
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 8]
mov qword [rax + 8], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp + 0x3b0]
add rsp, 0x20
mov qword [rbp - 0x20], rax
mov word [rcx], 0xa4c
sub rsp, 0x20
call fcn.140063da0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp - 0x18], rcx
cmp byte [rax], 0
jne 0x140216d54
mov eax, dword [0x140259608]
mov ecx, dword [0x14025960c]
xor ecx, 0xe97c5289
imul eax, ecx
mov edx, 0x15f633df
xor edx, 0xea09cc20
mov ecx, eax
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xd1f81463
and ecx, edx
or eax, 0xd1f81463
xor eax, 0xffffffff
xor ecx, 0xffffffff
mov edx, 0x5e20ab57
xor edx, 0xa1df54a8
xor eax, edx
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
and eax, edx
mov edx, 0xb35c12a8
or edx, 0xb35c12a8
mov r8d, 0xe7888c91
xor r8d, 0x1877736e
xor edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov edx, 0x45238121
xor edx, 0xbadc7ede
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0xb35c12a8
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xb0b6574d
cmp eax, 0x8b792c2e
je 0x140216e80
mov rcx, qword [rbp + 0x3f0]
mov rdx, qword [rbp + 0x3f8]
mov rax, qword [rbp - 0x18]
mov r11d, dword [0x140259610]
xor r11d, 0xbc0b8915
mov r10d, dword [0x140259614]
mov r8d, r11d
xor r8d, 0xffffffff
and r8d, 0xf02b7ae6
mov esi, 0x831b2396
xor esi, 0x73305970
mov r9d, 0x5f0b581a
xor r9d, 0xa0f4a7e5
xor esi, r9d
and r11d, esi
mov r9d, r10d
xor r9d, 0xffffffff
mov edi, 0x4868e014
xor edi, 0xb8439af2
and r9d, edi
and r10d, esi
or r8d, r11d
or r9d, r10d
xor r8d, r9d
add r8d, 0x841cdee
add r8d, 0x67c93efc
mov r9d, r8d
xor r9d, 0xffffffff
and r9d, 0xb1ae6ab7
mov r10d, 0xffffffff
xor r10d, 0xb1ae6ab7
and r8d, r10d
sub r8d, r9d
mov dword [rbp - 0x28], r8d
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rcx, qword [rbp + 0x3f0]
mov rax, qword [rbp - 0x20]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xf97
sub rsp, 0x20
call fcn.1400644d0
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp - 0x28]
mov dword [rdx + 0x10], r8d
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x21], cl
cmp eax, 0x5f8ebf48
jbe 0x14021671f
mov al, byte [rbp - 0x21]
test al, 1
jne 0x140216845
jmp 0x140216d54
mov ecx, dword [0x140259618]
mov eax, dword [0x14025961c]
mov edx, 0x6e2634b
xor edx, 0xf2bc17ae
xor eax, edx
and ecx, eax
mov eax, ecx
or eax, 0xaa9bc60f
xor eax, 0xffffffff
or ecx, 0xaa9bc60f
mov edx, 0xa8b4887c
xor edx, 0x574b7783
xor ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xa189a29c
xor edx, edx
div ecx
mov ecx, eax
mov edx, 0x32ec51b
xor edx, 0xfcd13ae4
mov eax, ecx
xor eax, edx
and eax, 0x1326b534
mov edx, 0xffffffff
xor edx, 0x1326b534
and ecx, edx
or eax, ecx
cmp eax, 0xbde52712
je 0x140216e89
mov ecx, dword [0x140259620]
mov edx, dword [0x140259624]
mov r8d, 0x60959149
xor r8d, 0x9f6a6eb6
mov eax, ecx
xor eax, r8d
mov r9d, 0xc1f9ddc
xor r9d, 0xf3e06223
mov r8d, edx
xor r8d, r9d
and eax, r8d
mov r8d, 0xbdc1900b
xor r8d, 0x423e6ff4
xor ecx, r8d
mov r8d, 0xd1fbd244
xor r8d, 0x2e042dbb
xor edx, r8d
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov edx, 0xec190505
xor edx, 0xec190504
mov ecx, eax
add ecx, edx
xor eax, 0xffffffff
or eax, 0x930763c
add eax, ecx
or eax, 0x5268b8df
xor ecx, ecx
sub ecx, 0x58f810ae
sub eax, ecx
mov dword [rbp - 0x30], eax
mov ecx, 0xc1
sub rsp, 0x20
call fcn.1400644d0
mov rdx, qword [rbp - 0x20]
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov r8d, eax
mov eax, dword [rbp - 0x30]
mov dword [rdx + 0x14], r8d
mov cl, byte [rcx]
mov dl, 0xae
xor dl, 0xae
cmp cl, dl
sete cl
mov byte [rbp - 0x29], cl
cmp eax, 0xfa0f432b
je 0x1402168be
mov al, byte [rbp - 0x29]
test al, 1
jne 0x140216998
jmp 0x140216d54
mov ecx, dword [0x140259628]
imul ecx, dword [0x14025962c]
mov edx, 0x99a6d734
xor edx, 0x665928cb
mov eax, ecx
xor eax, edx
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xb2d1b043
or eax, edx
mov edx, 0xb2d1b043
and edx, 0xb2d1b043
mov r8d, 0x33a551fa
xor r8d, 0xcc5aae05
xor edx, r8d
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
sub eax, 0x83e77a3d
add eax, 0x2c9d06e9
sub eax, 0x8544eeca
sub eax, 0x2c9d06e9
mov ecx, 0x84bf4f39
xor ecx, 0x7786fa09
cmp eax, ecx
jae 0x140216e92
mov rcx, qword [rbp - 0x20]
mov eax, dword [0x140259630]
mov edx, dword [0x140259634]
mov r8d, 0x5385b9ec
xor r8d, 0xb54186b1
xor edx, r8d
sub eax, edx
and eax, 0x2a89ed76
mov edx, eax
and edx, 0x709a9825
shl edx, 1
add eax, 0x709a9825
sub eax, edx
mov r8d, 0xe5a514f1
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rbp - 0x10]
mov dword [rbp - 0x44], edx
mov qword [rax + 0x10], rcx
mov ecx, 0x18
mov edx, 8
sub rsp, 0x20
call fcn.14001b860
mov rcx, qword [rbp + 0x3b8]
add rsp, 0x20
mov qword [rbp - 0x50], rax
mov ax, 0x8bfb
xor ax, 0x8a27
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063da0
mov rcx, qword [rbp + 0x458]
add rsp, 0x20
mov rdx, rax
mov eax, dword [rbp - 0x44]
mov qword [rbp - 0x40], rdx
mov cl, byte [rcx]
mov dl, 0xf4
xor dl, 0xf4
cmp cl, dl
sete cl
mov byte [rbp - 0x31], cl
cmp eax, 0x825e5616
ja 0x140216a17
mov al, byte [rbp - 0x31]
test al, 1
jne 0x140216add
jmp 0x140216d54
mov rcx, qword [rbp + 0x400]
mov rdx, qword [rbp + 0x408]
mov rax, qword [rbp - 0x40]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rcx, qword [rbp + 0x400]
mov rax, qword [rbp - 0x50]
add rsp, 0x20
mov rdx, qword [rcx]
mov rcx, qword [rcx + 8]
mov qword [rax], rdx
mov qword [rax + 8], rcx
mov ecx, 0xc26
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp - 0x50]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x458]
mov dword [rcx + 0x10], edx
cmp byte [rax], 0
jne 0x140216d54
mov ecx, 0x41e
sub rsp, 0x20
call fcn.1400644d0
mov rcx, qword [rbp - 0x50]
add rsp, 0x20
mov edx, eax
mov rax, qword [rbp + 0x458]
mov dword [rcx + 0x14], edx
cmp byte [rax], 0
jne 0x140216d54
mov rax, qword [rbp - 0x10]
mov rcx, qword [rbp - 0x50]
mov qword [rax + 0x18], rcx
mov ecx, 0x644
sub rsp, 0x20
call fcn.1400644d0
add rsp, 0x20
mov ecx, eax
mov rax, qword [rbp + 0x458]
mov dword [rbp - 0x54], ecx
cmp byte [rax], 0
jne 0x140216d54
mov r8d, dword [rbp - 0x54]
mov rdx, qword [rbp + 0x418]
mov rcx, qword [rbp + 0x410]
mov rax, qword [rbp - 0x10]
mov r9, qword [rbp + 0x10]
mov r10, qword [rbp + 8]
mov qword [rcx], r10
mov qword [rcx + 8], r9
movabs r9, 0x115f6ad0df9d2ad9
movabs r10, 0x115f6ad0df9d2ada
xor r9, r10
mov qword [rdx], r9
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140176549
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp - 0x60], rcx
cmp byte [rax], 0
jne 0x140216d54
mov rcx, qword [rbp + 0x3c0]
mov ax, 0xe1d6
xor ax, 0xe393
mov word [rcx], ax
sub rsp, 0x20
call fcn.140063da0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov qword [rbp - 0x68], rcx
mov al, byte [rax]
mov cl, 0x40
xor cl, 0x40
cmp al, cl
jne 0x140216d54
mov rcx, qword [rbp + 0x420]
mov rdx, qword [rbp + 0x428]
mov rax, qword [rbp - 0x68]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.14001ba7e
mov rdx, qword [rbp + 0x420]
mov r9, qword [rbp + 0x480]
mov rax, qword [rbp + 0x438]
mov rcx, qword [rbp + 0x440]
add rsp, 0x20
mov r8, qword [rdx]
mov rdx, qword [rdx + 8]
mov r9, qword [r9]
add r9, 0x18
mov qword [rbp - 0x78], r9
mov qword [rax], r8
mov qword [rax + 8], rdx
xor edx, edx
mov r8d, 0x10
sub rsp, 0x20
call sub.msvcrt.dll_memset
mov rcx, qword [rbp - 0x78]
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp + 0x438]
mov rax, qword [rbp + 0x440]
add rsp, 0x20
xor r9d, r9d
sub rsp, 0x30
mov qword [rsp + 0x20], rax
call fcn.140176040
add rsp, 0x30
mov ecx, eax
mov rax, qword [rbp + 0x458]
mov dword [rbp - 0x6c], ecx
cmp byte [rax], 0
jne 0x140216d54
sub rsp, 0x20
mov cx, 0x6ee
call fcn.140063c67
mov edx, dword [rbp - 0x6c]
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x458]
mov al, byte [rax]
test al, al
sete al
movsxd rdx, edx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140216d43
jmp 0x140216d54
mov rax, qword [rbp + 0x480]
mov rax, qword [rax]
mov rax, qword [rax + 0x40]
mov byte [rax], 1
mov rax, qword [rbp + 0x10]
cmp rax, 0
je 0x140216d8e
mov rcx, qword [rbp + 0x10]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140216d8e
mov rcx, qword [rbp + 0x10]
sub rsp, 0x20
call fcn.14000eec9
add rsp, 0x20
mov rax, qword [rbp + 0x458]
cmp byte [rax], 0
je 0x140216e1a
sub rsp, 0x20
call fcn.14020be7b
add rsp, 0x20
mov rax, qword [rax]
mov qword [rbp - 0x80], rax
cmp word [rax + 0x12], 1
jle 0x140216e1a
mov rax, qword [rbp - 0x80]
mov rax, qword [rax + 0x18]
cmp dword [rax + 8], 0xc5722261
jne 0x140216e1a
mov rax, qword [rbp + 0x458]
mov cl, 0x37
xor cl, 0x37
mov byte [rax], cl
sub rsp, 0x20
call fcn.14020be8d
add rsp, 0x20
mov rcx, rax
sub rsp, 0x20
call fcn.140099ce0
mov rax, qword [rbp + 0x458]
add rsp, 0x20
cmp byte [rax], 0
jne 0x140216e1a
sub rsp, 0x20
call fcn.14020bee1
add rsp, 0x20
lea rsp, [rbp + 0x488]
pop rbx
pop rdi
pop rsi
pop rbp
ret
and al, 0xf9
invalid
invalid
sub edi, dword [rdx + 0x18e99884]
loopne 0x140216e3f
invalid
dec ebx
mov ss, word [rsi - 0x1c9a16b4]
invalid
retf
xor al, 0x7d
cmp byte [rsi - 0x17], dh
insb byte [rdi], dx
in eax, 0xff
inc dword [rax + rcx*4 - 0x34165ff5]
test byte [rax - 0x34165ff5], cl
call 0x197d16e5d
scasd eax, dword [rdi]
push rdi
out dx, eax
xchg esp, eax
jmp 0x1402159ed
invalid
invalid
mov edi, dword [rcx]
invalid
movabs eax, dword [0xfffff896e9f1f2b5]
pop rdx
and edx, dword [rsi]
push rcx
jmp 0x1402168be
add ebp, dword [rcx]
pop rax
jmp 0x140216a17