Function at 0x14003fd40
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x420
mov qword [rsp + 0x400], r8
mov qword [rsp + 0x3e8], rdx
mov qword [rsp + 0x3f0], rcx
mov qword [rsp + 0x3f8], rcx
call fcn.14003fd21
mov r8, qword [rsp + 0x400]
mov qword [rsp + 0x408], rax
cmp r8, 0
jge 0x14003fdcc
mov rcx, qword [rsp + 0x400]
movabs rdx, 0x26d6766bbbb65dd5
movabs rax, 0x26d6766bbbb65dd5
xor rdx, rax
movabs r8, 0x15646612099a4531
movabs rax, 0x6a9b99edf665bace
xor r8, rax
call fcn.14000f6ec
jmp 0x140045321
mov rdx, qword [rsp + 0x400]
lea rcx, [rsp + 0x410]
call fcn.14001d7d0
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x410]
mov qword [rax], rdx
mov rdx, qword [rsp + 0x418]
mov qword [rax + 8], rdx
mov r8, 0xffffffffffffffff
xor r8, 0xfffffffffffffffa
xor edx, edx
sub rdx, 1
sub r8, rdx
mov rdx, rcx
sub rdx, r8
mov qword [rsp + 0x380], rdx
xor rdx, rcx
cmp rdx, 0
setl r8b
cmp rcx, 5
setg dl
and dl, r8b
mov byte [rsp + 0x38f], dl
movabs rdx, 0x27a02c6d35e281cb
mov r8, rcx
add r8, rdx
add r8, 0xfffffffffffffffb
movabs rdx, 0x27a02c6d35e281cb
sub r8, rdx
mov qword [rsp + 0x390], r8
movabs r9, 0x3bbf62df066d1b61
movabs rdx, 0xc4409d20f992e49e
xor r9, rdx
mov rdx, r8
xor rdx, r9
mov r9, r8
xor r9, 0xffffffffffffffff
and rdx, r9
movabs r10, 0xc55a9a52d5d3b764
movabs r9, 0x3aa565ad2a2c489b
xor r10, r9
mov r9, rcx
xor r9, r10
mov r10, rcx
xor r10, 0xffffffffffffffff
and r9, r10
xor rdx, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
and rdx, r9
xor r8, 0xffffffffffffffff
mov r9, rcx
xor r9, 0xffffffffffffffff
and r8, r9
or rdx, r8
movabs r8, 0x2880881dafe85ce6
movabs r9, 0xd77f77e25017a319
xor r8, r9
xor rdx, r8
cmp rdx, 0
setl r8b
cmp rcx, 4
setg dl
mov r9b, 1
xor r9b, 0
xor dl, r9b
xor r8b, 0xff
mov r9b, 1
xor r9b, 1
or dl, r8b
mov r8b, 1
xor r8b, 0
or r8b, r9b
xor dl, 0xff
and dl, r8b
mov byte [rsp + 0x39f], dl
movabs r8, 0x8cf97cdcc376de6a
movabs rdx, 0x730683233c892196
xor r8, rdx
mov rdx, rcx
add rdx, r8
mov qword [rsp + 0x3a0], rdx
mov r8, rdx
and r8, rcx
shl r8, 1
add rdx, rcx
sub rdx, r8
movabs r8, 0x3c8e6418399f57c1
movabs r9, 0x3c8e6418399f57c1
xor r8, r9
cmp rdx, r8
setl r8b
cmp rcx, 3
setg dl
and dl, r8b
mov byte [rsp + 0x3af], dl
mov r8, 0xffffffffffffffff
xor r8, 0xfffffffffffffffd
movabs rdx, 0x3daabcb088c2d523
movabs r9, 0x3daabcb088c2d523
xor rdx, r9
movabs r9, 0x441b85bda86949aa
movabs r10, 0x441b85bda86949ab
xor r9, r10
sub rdx, r9
sub r8, rdx
mov rdx, rcx
sub rdx, r8
mov qword [rsp + 0x3b0], rdx
xor rdx, rcx
movabs r8, 0xc83ad46772088241
movabs r9, 0xc83ad46772088241
xor r8, r9
cmp rdx, r8
setl r8b
cmp rcx, 2
setg dl
or dl, dl
xor r9d, r9d
xor r9b, 1
xor dl, r9b
or r8b, r8b
xor r9d, r9d
xor r9b, 1
xor r8b, r9b
or dl, r8b
xor dl, 0xff
mov byte [rsp + 0x3bf], dl
movabs r8, 0x3c2b182eee0a5ad4
mov rdx, rcx
add rdx, r8
add rdx, 0xfffffffffffffffe
movabs r8, 0x601bdde45b216ef9
movabs r9, 0x5c30c5cab52b342d
xor r8, r9
sub rdx, r8
mov qword [rsp + 0x3c0], rdx
xor rdx, rcx
cmp rdx, 0
setl dl
cmp rcx, 1
setg cl
and cl, dl
mov byte [rsp + 0x3cf], cl
add rax, 8
mov qword [rsp + 0x3d0], rax
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x3d8], rcx
mov qword [rsp + 0x3e0], rax
mov rcx, qword [rsp + 0x3d8]
mov rax, qword [rsp + 0x3e0]
mov qword [rsp + 0x370], rcx
mov qword [rsp + 0x378], rax
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x378]
mov qword [rsp + 0x368], rax
cmp rax, rcx
jge 0x140045321
mov rax, qword [rsp + 0x3e8]
mov rcx, qword [rsp + 0x368]
mov al, byte [rax + rcx]
mov byte [rsp + 0x367], al
mov cl, 0x26
xor cl, 0xd9
cmp al, cl
jle 0x140040242
mov ecx, dword [0x1401f32e0]
add ecx, dword [0x1401f32e4]
add ecx, 0xeeb1a8ef
xor ecx, 0x3ec4fa8d
mov edx, 0xffffffff
xor edx, 0x8db65f96
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0x5c1de0e0
jb 0x140045337
mov cl, byte [rsp + 0x367]
mov eax, dword [0x1401f32e8]
mov r9d, dword [0x1401f32ec]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
mov r10d, 0xad1fa880
xor r10d, 0x52e0577f
xor edx, r10d
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xf32fdd6c
or edx, 0xf32fdd6c
xor edx, 0xffffffff
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov r8d, 0x1cc0ca6c
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x368]
mov r8d, eax
mov r9d, r8d
xor r9d, 0xffffffff
mov eax, 0x51532c00
xor eax, 0x5e449e44
and eax, r9d
mov r9d, 0xffffffff
xor r9d, 0xf17b244
and r8d, r9d
or eax, r8d
movzx ecx, cl
mov dword [rsp + 0x354], ecx
mov rcx, rdx
and rcx, 1
movabs r8, 0xc7783a50f2411a82
movabs r9, 0xc7783a50f2411a83
xor r8, r9
or rdx, r8
add rcx, rdx
mov qword [rsp + 0x358], rcx
cmp eax, 0xd23e2fc0
ja 0x14004013d
mov rax, qword [rsp + 0x358]
mov ecx, dword [rsp + 0x354]
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jmp 0x14004250c
mov eax, dword [0x1401f32f0]
mov ecx, dword [0x1401f32f4]
mov edx, 0x439aae7d
xor edx, 0x7852d337
add eax, edx
sub eax, ecx
sub eax, 0x3bc87d4a
mov ecx, 0x7a93a596
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x93f90e77
mov edx, 0xffffffff
xor edx, 0x93f90e77
and eax, edx
or ecx, eax
mov edx, 0xffffffff
xor edx, 0x55477b99
mov eax, ecx
xor eax, edx
and eax, ecx
mov ecx, 0xdfb00985
xor ecx, 0x7fea818c
cmp eax, ecx
jae 0x140045340
mov cl, byte [rsp + 0x367]
mov edx, dword [0x1401f32f8]
mov r8d, dword [0x1401f32fc]
xor r8d, 0x3082a63d
mov eax, edx
and eax, r8d
xor eax, 0xffffffff
mov r9d, 0x318c05a
xor r9d, 0xfce73fa5
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edx, 0x2bf6a2f6
xor edx, 0x322aaec2
imul eax, edx
imul eax, eax, 0x8ec05327
mov edx, 0x60ec440b
xor edx, 0xa63d32ef
or eax, edx
movzx ecx, cl
mov qword [rsp + 0x338], rcx
and rcx, 0xe0
cmp rcx, 0xc0
sete cl
mov byte [rsp + 0x343], cl
cmp eax, 0x26b7db16
je 0x1400402a9
mov al, byte [rsp + 0x343]
test al, 1
jne 0x14004034e
jmp 0x1400408b8
mov al, byte [rsp + 0x3cf]
test al, 1
jne 0x140040362
jmp 0x140040519
mov r8d, dword [0x1401f3300]
mov edx, dword [0x1401f3304]
mov eax, 0xf4e565d7
xor eax, 0x889275c8
xor edx, eax
mov ecx, 0xe49f7f34
xor ecx, 0x1b6080cb
mov eax, r8d
xor eax, ecx
and eax, 0x1a06d2d9
mov r9d, 0xc4ca9f35
xor r9d, 0xdecc4dec
mov ecx, 0x2e45baab
xor ecx, 0xd1ba4554
xor r9d, ecx
and r8d, r9d
mov ecx, edx
xor ecx, 0xffffffff
mov r10d, 0x5bdc1936
xor r10d, 0x41dacbef
and ecx, r10d
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
imul ecx, eax, 0x26751929
mov edx, 0x2984175b
xor edx, 0xd67be8a4
mov eax, ecx
xor eax, edx
and eax, 0xb09f1bf0
mov edx, 0xffffffff
xor edx, 0xb09f1bf0
and ecx, edx
sub ecx, eax
mov edx, 0x3d32dc09
xor edx, 0xc2cd23f6
mov eax, ecx
xor eax, edx
mov edx, 0x3738111
xor edx, 0x7a1114f
mov r8d, 0xf3c76442
xor r8d, 0xc389bbd
xor edx, r8d
and eax, edx
or ecx, 0x4d2905e
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0xb804066b
xor ecx, 0x47fbf994
xor eax, ecx
cmp eax, 0x19bc9996
je 0x140045349
mov r8d, dword [0x1401f3308]
mov eax, 0x2f8568f
xor eax, 0xd749df20
xor r8d, eax
mov ecx, dword [0x1401f330c]
mov eax, r8d
add eax, 1
mov edx, 0x16ff1a77
xor edx, 0xe900e588
xor r8d, edx
or r8d, ecx
add r8d, eax
mov eax, r8d
xor eax, 0x61bdb3b0
xor eax, 0xffffffff
mov ecx, 0x5eee238a
xor ecx, 0x3f53903a
and ecx, eax
mov eax, 0x1d0dab90
xor eax, 0x1d0dab92
imul eax, ecx
sub eax, 0x61bdb3b0
sub r8d, eax
mov ecx, 0xcf7daae4
xor ecx, 0x3082551b
mov eax, r8d
xor eax, ecx
and eax, 0x6cfdb344
mov r9d, 0xffffffff
xor r9d, 0x6cfdb344
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0x9231e3a
and ecx, 0x6cfdb344
mov edx, 0xe8c21ff5
xor edx, 0xe1e101cf
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
sub eax, 0xbd4064e8
mov dword [rsp + 0x334], eax
call fcn.1400091c0
mov eax, dword [rsp + 0x334]
cmp eax, 0xfba15151
je 0x140040445
jmp 0x140045321
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x3c0]
movabs rcx, 0xfad0df94bf70956f
movabs rax, 0xfad0df94bf70956e
xor rcx, rax
mov rax, rdx
add rax, rcx
mov qword [rsp + 0x328], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jg 0x14004250c
mov eax, dword [0x1401f3310]
mov ecx, dword [0x1401f3314]
xor ecx, 0x5cc4bff4
sub eax, ecx
mov ecx, 0x5997305c
xor ecx, 0x806913cc
imul eax, ecx
mov r8d, eax
xor r8d, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x17444fd2
or r8d, ecx
mov ecx, 0x3dfc3c28
xor ecx, 0x2ab873fa
and eax, ecx
xor eax, 0xffffffff
and r8d, eax
xor r8d, 0xffffffff
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x1345ec3a
mov r9d, 0xffffffff
xor r9d, 0x1345ec3a
and r8d, r9d
mov ecx, 0xffffffff
xor ecx, 0xf8b90dc2
and ecx, 0x1345ec3a
mov edx, 0x111b18eb
xor edx, 0xe9a21529
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x83c5dc8d
xor ecx, 0x926397c8
cmp eax, ecx
jbe 0x140045352
mov rcx, qword [rsp + 0x328]
mov eax, dword [0x1401f3318]
mov edx, 0xb34ed6b6
xor edx, 0xe103074e
xor eax, edx
mov r8d, dword [0x1401f331c]
mov edx, 0x8da8369d
xor edx, 0x77e6c014
xor r8d, edx
xor edx, edx
div r8d
mov edx, eax
xor edx, 0xffffffff
mov r8d, 0xdac7bf97
xor r8d, 0xb2f25714
and r8d, edx
mov r9d, 0xffffffff
xor r9d, 0x6835e883
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x6835e883
or eax, 0x6835e883
imul eax, r8d
add eax, edx
mov r8d, 0x42d7088d
xor r8d, 0xbae9cb8b
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x400]
add eax, 0x2432fc2b
sub eax, 0xe48c1dce
mov r8d, 0xf3acf61c
xor r8d, 0xd79e0a37
sub eax, r8d
cmp rcx, rdx
setl cl
mov byte [rsp + 0x327], cl
cmp eax, 0xaf2bfb16
je 0x140045352
mov al, byte [rsp + 0x327]
test al, 1
jne 0x14004082a
jmp 0x1400406e2
mov eax, dword [0x1401f3320]
xor eax, 0x53edfe2e
xor eax, dword [0x1401f3324]
add eax, 0x779458ef
mov edx, eax
xor edx, 0xffffffff
and edx, 0x177e0cc0
mov r8d, 0xffffffff
xor r8d, 0x177e0cc0
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x177e0cc0
or eax, 0x177e0cc0
imul eax, edx
add eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x668f7c6f
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x7a235a69
xor r8d, 0x85dca596
xor ecx, r8d
imul ecx, edx
mov r8d, 0x9a24bc31
xor r8d, 0xfcabc05e
mov edx, eax
and edx, r8d
or eax, 0x668f7c6f
imul eax, edx
add eax, ecx
mov ecx, 0x6dd421d7
xor ecx, 0x11e1bc4b
cmp eax, ecx
jb 0x14004535b
mov rcx, qword [rsp + 0x328]
mov rdx, qword [rsp + 0x400]
mov r8d, dword [0x1401f3328]
or r8d, dword [0x1401f332c]
mov r9d, r8d
xor r9d, 0xffffffff
and r9d, 0x267ddc2a
mov r10d, 0xffffffff
xor r10d, 0x267ddc2a
mov eax, r8d
and eax, r10d
imul eax, r9d
mov r10d, 0x609dcd34
xor r10d, 0x46e0111e
mov r9d, r8d
and r9d, r10d
or r8d, 0x267ddc2a
imul r8d, r9d
add r8d, eax
mov r9d, 0xffffffff
xor r9d, 0x421c2abf
mov eax, r8d
xor eax, r9d
and eax, r8d
imul eax, eax, 0x6804dbd
mov dword [rsp + 0x320], eax
add rdx, 0xffffffffffffffff
call fcn.140016582
mov eax, dword [rsp + 0x320]
cmp eax, 0x378d316f
jb 0x140040783
jmp 0x140045321
mov rax, qword [rsp + 0x368]
mov rdx, qword [rsp + 0x3e8]
mov r8, qword [rsp + 0x328]
mov cl, byte [rsp + 0x367]
mov r9b, 0x2d
xor r9b, 0x32
and cl, r9b
movzx ecx, cl
shl ecx, 6
mov dl, byte [rdx + r8]
and dl, 0x3f
movzx edx, dl
or ecx, edx
movabs r8, 0xd1c2fbdffd6c8b9d
movabs rdx, 0xd1c2fbdffd6c8b9f
xor r8, rdx
mov rdx, rax
and rdx, r8
movabs r8, 0xfaec7e21b3b48a02
movabs r9, 0xfaec7e21b3b48a00
xor r8, r9
imul rdx, r8
xor rax, 2
add rax, rdx
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jmp 0x14004250c
mov rax, qword [rsp + 0x338]
and rax, 0xf0
cmp rax, 0xe0
jne 0x140040d0d
mov al, byte [rsp + 0x3bf]
test al, 1
jne 0x1400408e6
jmp 0x1400409fc
mov eax, dword [0x1401f3330]
xor eax, 0x2622e50f
mov ecx, dword [0x1401f3334]
mov edx, 0x3eb81a3c
xor edx, 0xfae161f4
add eax, edx
sub eax, ecx
sub eax, 0xc4597bc8
or eax, eax
mov ecx, 0xcb646f0b
xor ecx, 0x349b90f4
xor eax, ecx
mov ecx, 0xfa2b03ce
or ecx, 0xfa2b03ce
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x922ea6cc
add eax, ecx
add eax, 1
mov ecx, 0x2f8407cb
xor ecx, 0xa6b901f1
xor edx, edx
div ecx
cmp eax, 0x8f968850
je 0x140045364
mov eax, dword [0x1401f3338]
xor edx, edx
div dword [0x1401f333c]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0xd46a3e71
mov edx, 0xffffffff
xor edx, 0xd46a3e71
and eax, edx
sub eax, ecx
mov ecx, 0x33124b84
xor ecx, 0x6ff7aebc
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xaa7d9155
or ecx, 0xaa7d9155
mov edx, 0x15153f61
xor edx, 0xeaeac09e
xor ecx, edx
mov edx, 0xc3764281
xor edx, 0x3c89bd7e
xor eax, edx
xor ecx, 0xffffffff
and eax, ecx
mov dword [rsp + 0x31c], eax
mov eax, 0x5858b20
xor eax, 0xc18cb62c
mov dword [rsp + 0x318], eax
call fcn.1400091c0
mov ecx, dword [rsp + 0x318]
mov eax, dword [rsp + 0x31c]
cmp eax, ecx
ja 0x140040957
jmp 0x140045321
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x3b0]
movabs rcx, 0xf900e4c922e1a72f
movabs rax, 0x35255a45e6d3b7e
xor rcx, rax
mov rax, rdx
add rax, rcx
add rax, 1
movabs rcx, 0xfa52b16d7c8c9c51
sub rax, rcx
mov qword [rsp + 0x310], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jg 0x14004250c
mov rax, qword [rsp + 0x310]
mov rcx, qword [rsp + 0x400]
cmp rax, rcx
jl 0x140040bc1
mov eax, dword [0x1401f3340]
mov r8d, dword [str._fM_vM_k]
xor r8d, 0xe4c304f8
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, 0xd9524258
xor ecx, 0x97ecceff
or eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xdbc99b0c
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0xdbc99b0c
mov r8d, 0x22f38aff
xor r8d, 0xf93a11f3
or eax, r8d
imul eax, edx
add eax, ecx
and eax, 0x2fc74413
cmp eax, 0x99ba9ee6
jae 0x14004536d
mov rcx, qword [rsp + 0x310]
mov rdx, qword [rsp + 0x400]
mov eax, dword [0x1401f3348]
xor eax, 0x97613f62
or eax, dword [0x1401f334c]
mov r9d, eax
xor r9d, 0xffffffff
and r9d, 0x6e7926b9
mov r10d, 0xffffffff
xor r10d, 0x6e7926b9
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r10d, 0x617bcfcd
xor r10d, 0xf02e974
mov r9d, eax
and r9d, r10d
or eax, 0x6e7926b9
imul eax, r9d
add eax, r8d
mov r8d, 0x633299ed
xor r8d, 0xed32ef8a
or eax, r8d
imul eax, eax, 0xee893147
mov dword [rsp + 0x30c], eax
movabs rax, 0x6d8ba295150422d4
movabs r8, 0x92745d6aeafbdd2b
xor rax, r8
add rdx, rax
call fcn.140016582
mov eax, dword [rsp + 0x30c]
cmp eax, 0xcd21724a
ja 0x14004536d
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x368]
movabs r8, 0x7da8b66c81a4d515
movabs rax, 0x7da8b66c81a4d517
xor r8, rax
mov rax, rdx
and rax, r8
or rdx, 2
add rax, rdx
mov qword [rsp + 0x300], rax
cmp rax, rcx
jl 0x140040c24
mov rcx, qword [rsp + 0x300]
mov rdx, qword [rsp + 0x400]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rax, qword [rsp + 0x368]
mov r8, qword [rsp + 0x300]
mov rdx, qword [rsp + 0x310]
mov cl, byte [rsp + 0x367]
mov r9b, 0x77
xor r9b, 0x78
and cl, r9b
movzx r9d, cl
mov ecx, 0xa2672d14
xor ecx, 0xa2672d18
shl r9d, cl
mov rcx, qword [rsp + 0x3e8]
mov r10b, byte [rcx + rdx]
mov dl, r10b
xor dl, 0xff
mov r11b, 0x94
xor r11b, 0xab
mov bl, 0x97
xor bl, 0x68
xor r11b, bl
or dl, r11b
xor r10b, 0xff
mov r11b, 0xff
xor r11b, 0x3f
or r10b, r11b
xor dl, 0xff
xor r10b, 0xff
or dl, r10b
movzx edx, dl
shl edx, 6
or edx, r9d
mov r8b, byte [rcx + r8]
mov r9b, 0x43
xor r9b, 0xbc
mov cl, r8b
xor cl, r9b
xor r8b, 0xff
and cl, r8b
mov r8b, 0x3f
or r8b, 0x3f
xor r8b, 0xff
or cl, r8b
xor cl, 0xff
movzx r8d, cl
mov ecx, edx
or ecx, r8d
xor ecx, 0xffffffff
mov r9d, 0xdb7b6eb1
xor r9d, 0x2484914e
xor edx, r9d
xor r8d, 0xffffffff
and edx, r8d
or ecx, edx
xor ecx, 0xffffffff
add rax, 3
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jmp 0x14004250c
mov eax, dword [0x1401f3350]
xor eax, 0x48991762
add eax, dword [0x1401f3354]
imul eax, eax, 0xb3e458a1
add eax, 0x19c45046
add eax, 0x8c6e1eb0
sub eax, 0x19c45046
mov ecx, 0xe614ce33
xor ecx, 0xd5d82e23
xor edx, edx
div ecx
mov ecx, 0xf7942750
xor ecx, 0x3433e760
cmp eax, ecx
ja 0x140045376
mov edx, dword [0x1401f3358]
xor edx, 0x1aa3b22a
mov eax, dword [0x1401f335c]
mov ecx, edx
xor ecx, eax
xor eax, 0xffffffff
and edx, eax
mov eax, 0xc991909
xor eax, 0xc99190b
imul eax, edx
sub eax, ecx
add eax, 0xfcb9bb09
mov ecx, 0x18fe22b3
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x338]
xor eax, 0x5ee551fa
mov ecx, 0x1007e11b
xor ecx, 0xd028e3a2
movabs r8, 0x15417c76fb75d27c
movabs r9, 0x15417c76fb75d284
xor r8, r9
and rdx, r8
cmp rdx, 0xf0
sete dl
mov byte [rsp + 0x2ff], dl
cmp eax, ecx
je 0x140045376
mov al, byte [rsp + 0x2ff]
test al, 1
jne 0x140040dec
jmp 0x1400412eb
mov al, byte [rsp + 0x3af]
test al, 1
jne 0x140040e00
jmp 0x140040e0a
call fcn.1400091c0
jmp 0x140045321
mov eax, dword [0x1401f3360]
mov ecx, 0x8f78cd31
xor ecx, 0x8c2f6296
xor eax, ecx
and eax, dword [0x1401f3364]
sub eax, 0x3ac267fc
mov ecx, 0x73c24811
xor ecx, 0xf647f765
and eax, ecx
add eax, 0x820184f6
cmp eax, 0x66d0a71
ja 0x14004537f
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x3a0]
mov eax, dword [0x1401f3368]
or eax, dword [0x1401f336c]
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov r9d, 0xc3a42a79
or r9d, 0xc3a42a79
xor r9d, 0xffffffff
mov r10d, 0x662309c6
xor r10d, 0x99dcf639
xor ecx, r10d
xor r9d, 0xffffffff
and ecx, r9d
or eax, 0xc3a42a79
mov r9d, 0x6f5f87ee
xor r9d, 0x90a07811
xor eax, r9d
mov r9d, 0xc74f0d2b
xor r9d, 0x38b0f2d4
xor ecx, r9d
mov r9d, 0x502559e8
xor r9d, 0xafdaa617
xor eax, r9d
and ecx, eax
mov r9d, ecx
and r9d, 0x994976ae
mov eax, 0x25272105
xor eax, 0x25272107
imul eax, r9d
mov r9d, 0x2a6652e9
xor r9d, 0xb32f2447
add ecx, r9d
sub ecx, eax
mov r9d, 0xffffffff
xor r9d, 0x58a3858d
mov eax, ecx
xor eax, r9d
and eax, ecx
mov ecx, 0x412cdc25
xor ecx, 0xe36e78a8
cmp rdx, r8
setg r8b
mov byte [rsp + 0x2ef], r8b
add rdx, 1
mov qword [rsp + 0x2f0], rdx
cmp eax, ecx
ja 0x14004537f
mov rax, qword [rsp + 0x2f0]
mov dl, byte [rsp + 0x2ef]
mov ecx, 0xfffd
test dl, 1
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jne 0x14004250c
jmp 0x140040f64
mov rax, qword [rsp + 0x2f0]
mov rcx, qword [rsp + 0x400]
cmp rax, rcx
jl 0x140040fbb
mov rcx, qword [rsp + 0x2f0]
mov rax, qword [rsp + 0x400]
mov rdx, rax
and rdx, 0xffffffffffffffff
movabs r8, 0x7abdc80202631a44
movabs r9, 0x854237fdfd9ce5bb
xor r8, r9
or rax, r8
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x368]
movabs rdx, 0x5642190b72f2c750
movabs r8, 0x5642190b72f2c752
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x2e0], rax
cmp rax, rcx
jl 0x140041039
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x400]
mov rax, rdx
and rax, 0xffffffffffffffff
movabs r8, 0xf272aabedbc12666
movabs r9, 0xf272aabedbc12664
xor r8, r9
imul rax, r8
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x368]
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 3
add rdx, rax
movabs rax, 0xb16c20921d3e1c6b
movabs r8, 0xb16c20921d3e1c6b
xor rax, r8
sub rax, rdx
mov qword [rsp + 0x2d8], rax
cmp rax, rcx
jl 0x1400410b4
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x400]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140016582
jmp 0x140045321
mov ecx, dword [0x1401f3370]
mov edx, dword [0x1401f3374]
xor eax, eax
sub eax, edx
sub ecx, eax
mov edx, 0x8db2053a
xor edx, 0x724dfac5
mov eax, ecx
xor eax, edx
mov edx, 0x49b31f0d
xor edx, 0xc6a32060
mov r8d, 0x4b57b5ac
xor r8d, 0xb4a84a53
xor edx, r8d
or eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x8f103f6d
or ecx, edx
xor eax, 0xffffffff
mov edx, 0x532b3d53
xor edx, 0xacd4c2ac
xor ecx, edx
or eax, ecx
mov ecx, 0xd74b265f
xor ecx, 0x565a7df0
imul eax, ecx
imul eax, eax, 0x33e5f84b
mov ecx, 0x39f96d1d
xor ecx, 0x189b7a11
cmp eax, ecx
je 0x140045388
mov r8, qword [rsp + 0x368]
mov r9, qword [rsp + 0x3e8]
mov r10, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2f0]
mov bl, byte [rsp + 0x367]
mov r11d, dword [0x1401f3378]
mov esi, dword [0x1401f337c]
xor esi, 0x9d59c48f
mov eax, r11d
xor eax, 0xffffffff
mov edi, esi
xor edi, 0xffffffff
or eax, edi
and r11d, esi
xor r11d, 0xffffffff
mov esi, 0x1227a7a7
xor esi, 0xedd85858
xor eax, esi
mov esi, 0xec47ad02
xor esi, 0x13b852fd
xor r11d, esi
or eax, r11d
mov edi, 0xc512749e
xor edi, 0xff9bb139
mov r11d, 0xc0a20133
xor r11d, 0x3f5dfecc
xor edi, r11d
mov esi, eax
and esi, edi
mov r11d, eax
or r11d, edi
xor r11d, 0xffffffff
imul r11d, esi
mov esi, eax
and esi, 0x3a89c5a7
mov edi, 0x6a499eba
xor edi, 0x50c05b1d
or eax, edi
imul eax, esi
add eax, r11d
imul eax, eax, 0x309aafe0
mov r11d, 0x5bc22bda
xor r11d, 0x90752724
sub eax, r11d
mov r11d, 0xa4274c66
xor r11d, 0x5a946c2f
mov dword [rsp + 0x2c8], r11d
mov r11b, bl
xor r11b, 0xff
mov sil, 0x9f
xor sil, 0x60
xor bl, sil
and r11b, bl
mov bl, 0xff
xor bl, 7
mov sil, 0xff
xor sil, 7
and bl, sil
or r11b, bl
xor r11b, 0xff
movzx r11d, r11b
shl r11d, 0x12
mov dl, byte [r9 + rdx]
and dl, 0x3f
movzx edx, dl
shl edx, 0xc
or edx, r11d
mov cl, byte [r9 + rcx]
mov r11b, 0xc9
xor r11b, 0xf6
and cl, r11b
movzx r11d, cl
mov ecx, 0x81429344
xor ecx, 0x81429342
shl r11d, cl
mov ecx, dword [rsp + 0x2c8]
or edx, r11d
mov r9b, byte [r9 + r10]
mov r10b, 0x8b
xor r10b, 0xb4
and r9b, r10b
movzx r9d, r9b
or edx, r9d
mov dword [rsp + 0x2cc], edx
mov rdx, r8
and rdx, 4
or r8, 4
add rdx, r8
mov qword [rsp + 0x2d0], rdx
cmp eax, ecx
jae 0x14004113b
mov rax, qword [rsp + 0x2d0]
mov ecx, dword [rsp + 0x2cc]
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jmp 0x14004250c
mov rcx, qword [rsp + 0x338]
mov rdx, 0xffffffffffffffff
xor rdx, 0xfc
mov rax, rcx
xor rax, rdx
and rax, rcx
movabs rcx, 0x98a7f2b107c5d5d1
movabs rdx, 0x98a7f2b107c5d529
xor rcx, rdx
cmp rax, rcx
jne 0x140041ab5
mov ecx, dword [0x1401f3380]
mov r8d, dword [0x1401f3384]
mov eax, ecx
xor eax, 0xffffffff
mov edx, r8d
and edx, eax
mov eax, 0x4384ef3a
xor eax, 0xbc7b10c5
mov r9d, r8d
xor r9d, eax
mov eax, ecx
and eax, r9d
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x5b5cbdb3
xor eax, 0x1d8410d2
and eax, edx
mov edx, 0xffffffff
xor edx, 0x46d8ad61
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov edx, 0xaf6be74c
xor edx, 0x7c7b559e
mov ecx, 0xd1765ff0
xor ecx, 0x2e89a00f
xor edx, ecx
mov ecx, 0xffffffff
xor ecx, 0x37178721
or eax, edx
or ecx, 0x37178721
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x48e5a136
xor ecx, 0xbd47c485
sub eax, ecx
mov ecx, 0x5af54ca8
xor ecx, 0x18af20ad
cmp eax, ecx
jbe 0x140045391
mov eax, dword [0x1401f3388]
xor eax, 0xf9e036d7
mov edx, dword [0x1401f338c]
mov ecx, eax
and ecx, edx
mov r8d, 0x7b679edd
xor r8d, 0x7b679edf
imul ecx, r8d
xor eax, edx
add eax, ecx
add eax, 0xa886198d
xor ecx, ecx
sub ecx, eax
mov eax, 0xf5e573c3
xor eax, 0xf5e573c3
mov edx, 0x14a6019f
xor edx, 0x72033d9a
sub eax, edx
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x34969dee
xor edx, edx
div ecx
cmp eax, 0xad75a9cc
je 0x1400413d9
mov al, byte [rsp + 0x39f]
test al, 1
jne 0x140041451
jmp 0x14004145b
call fcn.1400091c0
jmp 0x140045321
mov ecx, dword [0x1401f3390]
mov edx, dword [0x1401f3394]
mov eax, ecx
and eax, edx
shl eax, 1
xor ecx, edx
add ecx, eax
and ecx, ecx
mov eax, 0xbb3f7eae
xor eax, 0x44c08151
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0x70fe8296
mov edx, 0x97d2a13a
xor edx, 0xe72c23ac
mov r8d, 0xe323e3ec
xor r8d, 0x1cdc1c13
xor edx, r8d
or eax, edx
mov edx, 0xc056bd40
xor edx, 0x3fa942bf
xor ecx, edx
mov edx, 0x83029234
xor edx, 0x7cfd6dcb
xor eax, edx
or ecx, eax
mov eax, 0x623f327
xor eax, 0xfc87fd85
and ecx, eax
mov eax, ecx
and eax, 0x828c8ad8
or ecx, 0x828c8ad8
add eax, ecx
cmp eax, 0x37726a07
jb 0x14004539a
mov rcx, qword [rsp + 0x368]
mov rdx, qword [rsp + 0x390]
mov r8d, dword [0x1401f3398]
mov r9d, dword [0x1401f339c]
xor r9d, 0x370c1f9b
mov r10d, 0xdebee66e
xor r10d, 0x21411991
mov eax, r8d
xor eax, r10d
mov r10d, 0xe4e7721a
xor r10d, 0x1b188de5
xor r8d, r10d
or eax, r8d
mov r8d, r9d
xor r8d, 0xffffffff
mov r10d, 0xc84c71a6
xor r10d, 0x37b38e59
xor r9d, r10d
or r8d, r9d
xor eax, 0xffffffff
xor r8d, 0xffffffff
or eax, r8d
add eax, 0x8626beb2
mov r8d, 0x462c41dd
xor r8d, 0xae010dba
and eax, r8d
add eax, 0xf85830c2
cmp rcx, rdx
setg dl
mov byte [rsp + 0x2bf], dl
movabs rdx, 0x534571e719cd6a85
movabs r8, 0x534571e719cd6a84
xor rdx, r8
add rcx, rdx
mov qword [rsp + 0x2c0], rcx
cmp eax, 0x2f013618
jb 0x14004539a
mov rax, qword [rsp + 0x2c0]
mov dl, byte [rsp + 0x2bf]
mov ecx, 0xfffd
test dl, 1
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jne 0x14004250c
jmp 0x1400415dd
mov eax, dword [0x1401f33a0]
xor eax, 0xa9008707
mov ecx, dword [0x1401f33a4]
or eax, eax
xor eax, 0xffffffff
or ecx, ecx
mov edx, 0x694d35a3
xor edx, 0x96b2ca5c
xor ecx, edx
or eax, ecx
mov ecx, 0xc755ed7e
xor ecx, 0x38aa1281
xor eax, ecx
mov ecx, eax
add ecx, 1
mov edx, 0x8b4ffeee
xor edx, 0x74b00111
xor eax, edx
mov edx, 0xdb82e85
xor edx, 0x400bce2a
or eax, edx
add eax, ecx
add eax, 0xb0604325
mov ecx, eax
and ecx, 0xfb75b508
shl ecx, 1
add eax, 0xfb75b508
sub eax, ecx
cmp eax, 0x16086df0
jb 0x1400453a3
mov rdx, qword [rsp + 0x2c0]
mov r8, qword [rsp + 0x400]
mov eax, dword [0x1401f33a8]
mov ecx, dword [0x1401f33ac]
mov r9d, 0x241ad4a
xor r9d, 0xc62cfc9d
xor ecx, r9d
sub eax, ecx
mov ecx, 0x593f66f7
xor ecx, 0x593f66f7
sub ecx, eax
xor eax, eax
sub eax, 0xb9cfeac2
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x16aa1e69
xor ecx, 0xb03abf57
or eax, ecx
mov ecx, eax
xor ecx, 0x66a79d36
mov r9d, 0x6d955f34
xor r9d, 0xb32c202
mov r10d, 0xfd98343d
xor r10d, 0x267cbc2
xor r9d, r10d
and eax, r9d
shl eax, 1
sub eax, ecx
mov ecx, 0x2320a7af
xor ecx, 0xf0a71310
cmp rdx, r8
setl dl
mov byte [rsp + 0x2be], dl
cmp eax, ecx
je 0x1400453a3
mov al, byte [rsp + 0x2be]
test al, 1
jne 0x140041762
jmp 0x14004170a
mov rcx, qword [rsp + 0x2c0]
mov rdx, qword [rsp + 0x400]
movabs rax, 0x51902050361ea1ca
movabs r8, 0xae6fdfafc9e15e35
xor rax, r8
movabs r8, 0xb5e99b45091a7e95
movabs r9, 0x4a1664baf6e5816a
xor r8, r9
xor rax, r8
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x368]
add rax, 2
mov qword [rsp + 0x2b0], rax
cmp rax, rcx
jl 0x1400417d9
mov rcx, qword [rsp + 0x2b0]
mov rdx, qword [rsp + 0x400]
movabs rax, 0xe95ec139d24b48b6
movabs r8, 0x4121e977c10ceb6
xor rax, r8
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xe0bdfbb463696c8f
movabs r8, 0xdf1241acd32ea8f
xor rax, r8
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x368]
add rax, 3
mov qword [rsp + 0x2a8], rax
cmp rax, rcx
jl 0x140041830
mov rcx, qword [rsp + 0x2a8]
mov rdx, qword [rsp + 0x400]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x368]
mov rdx, rax
and rdx, 4
shl rdx, 1
xor rax, 4
add rax, rdx
mov qword [rsp + 0x2a0], rax
cmp rax, rcx
jl 0x1400418b1
mov rcx, qword [rsp + 0x2a0]
mov rdx, qword [rsp + 0x400]
movabs rax, 0x5b630bab1b05443d
sub rdx, rax
movabs rax, 0x24ee062a60bdb27c
movabs r8, 0xdb11f9d59f424d83
xor rax, r8
add rdx, rax
movabs rax, 0x5b630bab1b05443d
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov eax, dword [0x1401f33b0]
mov ecx, dword [0x1401f33b4]
mov edx, 0x3dad0019
xor edx, 0x2f5b1472
xor ecx, edx
imul eax, ecx
mov ecx, 0xea5929ca
xor ecx, 0x71eb6589
or eax, ecx
mov ecx, 0x506be04
xor edx, edx
div ecx
mov ecx, 0xa1b9db3e
xor ecx, 0x513cfbed
and eax, ecx
cmp eax, 0x4fb96c74
je 0x1400453ac
mov r8, qword [rsp + 0x3e8]
mov r9, qword [rsp + 0x2a0]
mov r10, qword [rsp + 0x2a8]
mov cl, byte [rsp + 0x367]
mov eax, dword [0x1401f33b8]
xor eax, 0xde439ef4
xor edx, edx
div dword [0x1401f33bc]
mov rdx, qword [rsp + 0x368]
and eax, 0xd160239
sub eax, 0x39c66155
sub eax, 0x70515895
mov r11b, cl
add r11b, 1
xor cl, 0xff
mov bl, 0xbb
xor bl, 0xb8
or cl, bl
add cl, r11b
movzx edi, cl
mov ecx, 0xb954cfe7
xor ecx, 0xb954cfff
shl edi, cl
mov rcx, qword [rsp + 0x2c0]
mov cl, byte [r8 + rcx]
or cl, cl
xor cl, 0xff
mov r11b, 0x5d
xor r11b, 0x62
mov bl, 0xc8
xor bl, 0xf7
or r11b, bl
xor r11b, 0xff
xor cl, 0xff
xor r11b, 0xff
and cl, r11b
movzx esi, cl
mov ecx, 0x77cb0d3b
xor ecx, 0x77cb0d29
shl esi, cl
mov rcx, qword [rsp + 0x2b0]
mov ebx, 0x9abf076a
xor ebx, 0x6540f895
mov r11d, esi
xor r11d, ebx
mov ebx, edi
xor ebx, 0xffffffff
and r11d, ebx
mov ebx, 0xdd296618
xor ebx, 0x22d699e7
xor esi, ebx
xor edi, 0xffffffff
and esi, edi
xor r11d, 0xffffffff
xor esi, 0xffffffff
and r11d, esi
mov dword [rsp + 0x290], r11d
mov cl, byte [r8 + rcx]
mov r11b, cl
xor r11b, 0x3f
xor r11b, 0xff
or cl, 0x3f
and cl, r11b
movzx r11d, cl
mov ecx, 0xe4bc912b
xor ecx, 0xe4bc9127
shl r11d, cl
mov ecx, dword [rsp + 0x290]
or ecx, r11d
mov r10b, byte [r8 + r10]
and r10b, 0x3f
movzx r10d, r10b
shl r10d, 6
or ecx, r10d
mov r8b, byte [r8 + r9]
and r8b, 0x3f
movzx r10d, r8b
mov r9d, r10d
xor r9d, 0xffffffff
mov r8d, ecx
and r8d, r9d
mov r9d, ecx
xor r9d, r10d
add ecx, r9d
sub ecx, r8d
mov dword [rsp + 0x294], ecx
movabs r8, 0x9283ead247b94a8c
movabs rcx, 0x9283ead247b94a89
xor r8, rcx
mov rcx, rdx
and rcx, r8
or rdx, 5
add rcx, rdx
mov qword [rsp + 0x298], rcx
cmp eax, 0xfa7eb855
jae 0x1400418fb
mov rax, qword [rsp + 0x298]
mov ecx, dword [rsp + 0x294]
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jmp 0x14004250c
mov rax, qword [rsp + 0x338]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0x14ff12431d48333
movabs r8, 0x14ff12431d483cd
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0xfc
jne 0x1400424c3
mov al, byte [rsp + 0x38f]
test al, 1
jne 0x140041b05
jmp 0x140041b0f
call fcn.1400091c0
jmp 0x140045321
mov rdx, qword [rsp + 0x368]
mov r8, qword [rsp + 0x380]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x288], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jg 0x14004250c
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x400]
cmp rax, rcx
jl 0x140041cec
mov eax, dword [0x1401f33c0]
add eax, dword [0x1401f33c4]
or eax, 0xa581114c
mov ecx, 0xf7d0d553
xor ecx, 0xd89f1957
xor edx, edx
div ecx
mov r11d, eax
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x244cab28
mov edx, 0xffffffff
xor edx, 0xd99e79a2
mov eax, ecx
and eax, 0xd99e79a2
and r11d, edx
mov r9d, r8d
and r9d, 0xd99e79a2
mov r10d, edx
and r10d, 0x244cab28
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xd99e79a2
and ecx, edx
or eax, ecx
cmp eax, 0x1eb78d09
je 0x1400453b5
mov rcx, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x400]
mov r8d, dword [0x1401f33c8]
mov r10d, dword [0x1401f33cc]
mov eax, r8d
xor eax, 0xffffffff
mov r9d, r10d
and r9d, eax
mov r11d, r10d
xor r11d, 0xffffffff
mov eax, r8d
and eax, r11d
imul eax, r9d
mov r9d, r8d
and r9d, r10d
or r8d, r10d
imul r8d, r9d
add r8d, eax
sub r8d, 0xea60c667
add r8d, 0xc7108014
add r8d, 0xea60c667
mov eax, r8d
xor eax, 0xffffffff
mov r9d, 0xffffffff
xor r9d, 0x45eff2f
or eax, r9d
mov r9d, 0xa3b87aad
xor r9d, 0xa7e68582
and r8d, r9d
xor r8d, 0xffffffff
and eax, r8d
xor eax, 0xffffffff
mov r10d, 0xffffffff
xor r10d, 0x7c205d6
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r10d, 0x315bae14
xor r10d, 0x3699abc2
mov r9d, eax
and r9d, r10d
or eax, 0x7c205d6
imul eax, r9d
add eax, r8d
mov dword [rsp + 0x284], eax
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140016582
mov eax, dword [rsp + 0x284]
cmp eax, 0x8ee078df
ja 0x140041be7
jmp 0x140045321
mov eax, dword [0x1401f33d0]
mov ecx, dword [0x1401f33d4]
xor ecx, 0x9be485b3
xor eax, ecx
mov ecx, eax
xor ecx, 0x2b5104bd
mov edx, 0xffffffff
xor edx, 0x2b5104bd
and eax, edx
shl eax, 1
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x63a78deb
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x63a78deb
or eax, 0x63a78deb
imul eax, edx
add eax, ecx
imul eax, eax, 0xfc6adf27
cmp eax, 0xa8afae3a
jbe 0x1400453be
mov r8, qword [rsp + 0x400]
mov rdx, qword [rsp + 0x368]
mov ecx, dword [0x1401f33d8]
mov r9d, dword [0x1401f33dc]
mov eax, 0xab3a7284
xor eax, 0xab3a7284
sub eax, ecx
xor ecx, ecx
sub ecx, r9d
add eax, ecx
mov edi, 0x99914af3
xor edi, 0x99914af3
sub edi, eax
mov eax, 0x199e7365
xor eax, 0xe6618c9a
mov ecx, edi
xor ecx, eax
mov r9d, 0xffffffff
xor r9d, 0x1f4f918a
mov r10d, 0xffffffff
xor r10d, 0x1f81b0bc
mov eax, ecx
and eax, 0x1f81b0bc
and edi, r10d
mov r11d, r9d
and r11d, 0x1f81b0bc
mov esi, r10d
and esi, 0x1f4f918a
or eax, edi
or r11d, esi
xor eax, r11d
or ecx, r9d
mov r9d, 0x604e05c2
xor r9d, 0x9fb1fa3d
xor ecx, r9d
mov r9d, 0xb8d5a79e
xor r9d, 0xa7541722
or r9d, r10d
and ecx, r9d
or eax, ecx
and eax, 0xd027447a
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x2cc03487
add ecx, eax
xor eax, eax
sub eax, ecx
mov ecx, 0x4c819963
xor ecx, 0xa403bd65
xor r9d, r9d
sub r9, 2
sub rdx, r9
mov qword [rsp + 0x278], rdx
cmp rdx, r8
setl dl
mov byte [rsp + 0x283], dl
cmp eax, ecx
je 0x140041d5a
mov al, byte [rsp + 0x283]
test al, 1
jne 0x140041fdf
jmp 0x140041e68
mov eax, dword [0x1401f33e0]
xor eax, 0x117400d
mov edx, dword [0x1401f33e4]
mov ecx, eax
and ecx, edx
xor eax, edx
or ecx, eax
mov eax, 0x2027bb29
xor eax, 0x7617c517
xor ecx, eax
mov eax, 0x93d328f
xor eax, 0x6a3f1b13
mov edx, 0x13048327
xor edx, 0xecfb7cd8
xor eax, edx
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov r8d, 0x32e3b5a2
xor r8d, 0xcd1c4a5d
mov edx, ecx
xor edx, r8d
or eax, edx
mov edx, 0x4ab08c95
xor edx, 0xb54f736a
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x67283ebf
or eax, edx
mov edx, 0x67283ebf
and edx, 0x67283ebf
xor edx, 0xffffffff
and ecx, edx
mov edx, 0x171a765b
xor edx, 0xe8e589a4
xor ecx, edx
mov edx, 0xc2abedcd
xor edx, 0x3d541232
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
cmp eax, 0xdb0dbf50
jae 0x1400453c7
mov rcx, qword [rsp + 0x278]
mov rax, qword [rsp + 0x400]
mov edx, dword [str.W_u]
mov r8d, 0x6636d74d
xor r8d, 0x39cc9276
xor edx, r8d
mov r8d, dword [0x1401f33ec]
mov r9d, 0x6281ec32
xor r9d, 0xadcfc31f
xor r8d, r9d
add edx, 0x43938948
sub edx, r8d
mov r8d, 0x2daf8efc
xor r8d, 0x6e3c07b4
sub edx, r8d
add edx, 0xa8743b8a
sub edx, 0xf0248332
sub edx, 0x20928e1
mov r8d, 0x95510543
xor r8d, 0x122daf23
sub edx, r8d
add edx, 0x20928e1
mov dword [rsp + 0x274], edx
movabs r8, 0x503d7df7939d0ef6
movabs rdx, 0xafc282086c62f109
xor r8, rdx
mov rdx, rax
and rdx, r8
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140016582
mov eax, dword [rsp + 0x274]
cmp eax, 0x8688093d
je 0x140041f1a
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x368]
movabs rdx, 0x7fc0bf2cd6fff9f5
movabs r8, 0xa7cdbc0ca5c0a0ef
xor rdx, r8
sub rax, rdx
movabs rdx, 0x4160f4667a42ad2d
movabs r8, 0x4160f4667a42ad2e
xor rdx, r8
add rax, rdx
movabs rdx, 0xa07158180b6979ab
movabs r8, 0x787c5b38785620b1
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x268], rax
cmp rax, rcx
jl 0x14004206c
mov rcx, qword [rsp + 0x268]
mov rdx, qword [rsp + 0x400]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x400]
mov rax, qword [rsp + 0x368]
movabs rdx, 0xa51bae4c66a07092
movabs r8, 0xc35a8475c315c58f
xor rdx, r8
add rax, rdx
add rax, 4
movabs rdx, 0x66412a39a5b5b51d
sub rax, rdx
mov qword [rsp + 0x260], rax
cmp rax, rcx
jl 0x1400420db
mov rcx, qword [rsp + 0x260]
mov rdx, qword [rsp + 0x400]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
call fcn.140016582
jmp 0x140045321
mov eax, dword [0x1401f33f0]
imul eax, dword [0x1401f33f4]
mov ecx, 0xfb95ba6b
xor ecx, 0x3a016f62
sub eax, ecx
mov r8d, 0xffffffff
xor r8d, 0xe4fb88b2
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x2aacf191
xor r8d, 0xd5530e6e
xor ecx, r8d
imul ecx, edx
mov r8d, 0xee1649bf
xor r8d, 0xaedc10d
mov edx, eax
and edx, r8d
mov r8d, 0x9aa07dc9
xor r8d, 0x7e5bf57b
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x73dfd745
shl ecx, 1
xor eax, 0x73dfd745
add eax, ecx
mov ecx, 0x416e5174
xor ecx, 0xaac70c53
cmp eax, ecx
ja 0x1400453d0
mov r8, qword [rsp + 0x400]
mov ecx, dword [0x1401f33f8]
mov edx, dword [0x1401f33fc]
mov eax, ecx
xor eax, 0xffffffff
mov r9d, ecx
xor r9d, 0xffffffff
and eax, r9d
mov r9d, edx
or r9d, r9d
xor r9d, 0xffffffff
xor eax, 0xffffffff
mov r10d, 0xf54ed947
xor r10d, 0xab126b8
xor r9d, r10d
and eax, r9d
mov r9d, 0xbf3de672
xor r9d, 0x40c2198d
xor ecx, r9d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, 0x792c6fbd
xor ecx, 0x86d39042
xor eax, ecx
or eax, 0xf60697ab
mov ecx, 0x14248ee
xor ecx, 0x3950ffaa
or eax, ecx
mov ecx, 0x2dd58618
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x368]
mov ecx, 0x334aa96b
xor ecx, 0x15f6e858
mov r9, 0xffffffffffffffff
xor r9, 5
xor r10d, r10d
sub r10, 1
sub r9, r10
sub rdx, r9
mov qword [rsp + 0x250], rdx
cmp rdx, r8
setl dl
mov byte [rsp + 0x25f], dl
cmp eax, ecx
je 0x14004216b
mov al, byte [rsp + 0x25f]
test al, 1
jne 0x140042399
jmp 0x140042249
mov ecx, dword [0x1401f3400]
mov edx, dword [0x1401f3404]
xor eax, eax
sub eax, edx
add ecx, eax
mov eax, ecx
add eax, 1
mov edx, 0x7c02cd1f
xor edx, 0x83fd32e0
xor ecx, edx
or ecx, 0x81088bac
add ecx, eax
mov r8d, 0xd85a07c
xor r8d, 0xff87dc11
mov eax, 0x6294f0e7
xor eax, 0x9d6b0f18
xor r8d, eax
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
mov r8d, 0x96efa6b4
xor r8d, 0x6910594b
xor eax, r8d
imul eax, edx
mov r8d, 0x18adeb40
xor r8d, 0xeaaf972d
mov edx, ecx
and edx, r8d
or ecx, 0xf2027c6d
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0xf3ed6642
xor ecx, 0xf3ed6642
or eax, ecx
cmp eax, 0x44eccd33
jbe 0x1400453d9
mov rcx, qword [rsp + 0x250]
mov rdx, qword [rsp + 0x400]
mov eax, dword [0x1401f3408]
xor eax, 0x90b4b25
mov r8d, dword [0x1401f340c]
xor r8d, 0x1a40d643
and eax, r8d
and eax, 0xc7ab1c5b
mov r10d, 0xffffffff
xor r10d, 0x11de4e4a
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
mov r10d, 0x66e65a6d
xor r10d, 0x9919a592
xor r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x11de4e4a
mov r10d, 0xf56dd31f
xor r10d, 0xe4b39d55
or eax, r10d
imul eax, r9d
add eax, r8d
mov r8d, 0x26ab0f4c
xor r8d, 0xad1ea074
xor eax, r8d
mov dword [rsp + 0x24c], eax
add rdx, 0xffffffffffffffff
call fcn.140016582
mov eax, dword [rsp + 0x24c]
cmp eax, 0x20ada5d1
je 0x1400453d9
jmp 0x140045321
mov rax, qword [rsp + 0x368]
mov rcx, qword [rsp + 0x3e8]
mov rdx, qword [rsp + 0x250]
mov r8, qword [rsp + 0x288]
mov r9b, byte [rsp + 0x367]
and r9b, 1
movzx r9d, r9b
shl r9d, 0x1e
movd xmm1, dword [rcx + r8]
movaps xmm0, xmmword [0x1401ff660]
pand xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
movaps xmm2, xmmword [0x1401ff670]
movaps xmm0, xmm1
pmuludq xmm0, xmm2
pshufd xmm0, xmm0, 0xe8
pshufd xmm1, xmm1, 0xf5
movaps xmm2, xmmword [0x1401ff680]
pmuludq xmm1, xmm2
pshufd xmm1, xmm1, 0xe8
punpckldq xmm0, xmm1
movzx r8d, byte [rcx + rdx]
and r8d, 0x3f
pshufd xmm1, xmm0, 0xee
por xmm0, xmm1
pshufd xmm1, xmm0, 0x55
por xmm0, xmm1
movd edx, xmm0
mov ecx, r9d
and ecx, edx
xor ecx, 0xffffffff
add edx, r9d
mov r9d, 0x1ac7f7b0
xor r9d, 0x1ac7f7b1
add edx, r9d
add edx, ecx
mov r9d, 0x1767c476
xor r9d, 0xe8983b89
mov ecx, edx
xor ecx, r9d
mov r9d, r8d
xor r9d, 0xffffffff
and ecx, r9d
or edx, r8d
mov r8d, 0x42470e4b
xor r8d, 0xbdb8f1b4
xor edx, r8d
mov r8d, 0x319d71d
xor r8d, 0xfce628e2
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
movabs rdx, 0xb4e0d3cdb751d8f1
movabs r8, 0xb4e0d3cdb751d8f7
xor rdx, r8
add rax, rdx
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
jmp 0x14004250c
mov rax, qword [rsp + 0x368]
mov cl, byte [rsp + 0x367]
movzx ecx, cl
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 1
add rdx, rax
movabs rax, 0xd4ad775738d80b66
movabs r8, 0xd4ad775738d80b66
xor rax, r8
sub rax, rdx
mov dword [rsp + 0x344], ecx
mov qword [rsp + 0x348], rax
mov ecx, dword [rsp + 0x344]
mov rax, qword [rsp + 0x348]
mov qword [rsp + 0x240], rax
call fcn.14003f0f0
mov ecx, eax
mov rax, qword [rsp + 0x408]
mov dword [rsp + 0x248], ecx
cmp byte [rax], 0
jne 0x140045321
mov eax, dword [rsp + 0x248]
cmp eax, 0x80
jae 0x140042741
mov r9, qword [rsp + 0x370]
mov rax, r9
and rax, 1
mov rcx, r9
or rcx, 1
add rax, rcx
mov qword [rsp + 0x238], rax
mov rcx, r9
xor rcx, 0xffffffffffffffff
movabs rdx, 0xcac21f4441f3cec6
and rcx, rdx
movabs r10, 0x5f7cdc09a4e45d1d
movabs rdx, 0x95bec34de51793db
xor r10, rdx
movabs rdx, 0x5cbd90013aedbadf
movabs r8, 0xa3426ffec5124520
xor rdx, r8
xor r10, rdx
and r9, r10
movabs rdx, 0xab98f9d2b7d46c0a
movabs r8, 0x5467062d482b93f5
xor rdx, r8
movabs r8, 0x768a931826410333
movabs r11, 0x89756ce7d9befccc
xor r8, r11
xor rdx, r8
movabs r8, 0xcac21f4441f3cec6
and rdx, r8
movabs r8, 0xacf0ca0fa8280f7
movabs r11, 0xf530f35f057d7f08
xor r8, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x140042635
call fcn.1400091c0
jmp 0x140045321
mov rax, qword [rsp + 0x238]
movabs rcx, 0x65a123b2d223575e
movabs rdx, 0x65a123b2d223575e
xor rcx, rdx
cmp rax, rcx
jge 0x14004269d
mov rcx, qword [rsp + 0x238]
movabs rdx, 0x8f48250c80f36c79
movabs rax, 0x8f48250c80f36c79
xor rdx, rax
movabs r8, 0xd376e20b275bc117
movabs rax, 0xac891df4d8a43ee8
xor r8, rax
call fcn.14000f6ec
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x238]
call fcn.140018050
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rsp + 0x370]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x230], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140042701
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x230]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov ecx, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x370]
mov rax, qword [rsp + 0x238]
mov qword [rsp + 0x218], rdx
mov byte [rsp + 0x227], cl
mov qword [rsp + 0x228], rax
jmp 0x14004511c
mov eax, dword [0x1401f3410]
mov ecx, dword [0x1401f3414]
xor ecx, 0xd4d2a779
or eax, ecx
sub eax, 0x38014eb7
xor ecx, ecx
sub ecx, 0x7add41e8
sub eax, ecx
or eax, 0x2adc5b39
mov ecx, 0x9d37f1ac
xor ecx, 0xbbd4a586
cmp eax, ecx
jbe 0x1400453e2
mov ecx, dword [rsp + 0x248]
mov eax, dword [0x1401f3418]
mov r8d, dword [0x1401f341c]
xor r8d, 0x23727e1e
mov edx, r8d
and edx, eax
mov r9d, 0xf5e1325e
xor r9d, 0xa1ecda1
xor edx, r9d
add eax, r8d
add eax, 1
add eax, edx
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xa8908b6c
mov edx, 0xffffffff
xor edx, 0xe69a7c97
or eax, r8d
or edx, 0xe69a7c97
xor eax, 0xffffffff
and eax, edx
add eax, 0xcec31f7d
mov r9d, 0x29ee505e
xor r9d, 0xbe2e734d
mov edx, 0x7d79904b
xor edx, 0x82866fb4
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0x97c02313
or eax, 0x97c02313
imul eax, r8d
add eax, edx
cmp ecx, 0x800
setb cl
mov byte [rsp + 0x217], cl
cmp eax, 0x8776d003
jb 0x1400453e2
mov al, byte [rsp + 0x217]
test al, 1
jne 0x140042853
jmp 0x140042f76
mov eax, dword [0x1401f3420]
mov ecx, dword [0x1401f3424]
xor ecx, 0xb4364d2e
sub eax, ecx
mov ecx, 0xe2ca3c2f
xor ecx, 0x1d35c3d0
xor eax, ecx
mov edx, 0xb6e6dd5
xor edx, 0x1eda1372
mov ecx, 0x81546667
xor ecx, 0x7eab9998
xor edx, ecx
mov ecx, 0x6aa96b6d
xor ecx, 0xc6b40d01
mov r8d, 0xf84868c3
xor r8d, 0x7b7973c
xor ecx, r8d
or eax, edx
or ecx, 0xac1d666c
xor eax, 0xffffffff
and eax, ecx
or eax, 0x8fb169cc
sub eax, 0x4dbf1b8
mov ecx, 0x92c778d6
xor ecx, 0x5ad2fe1b
cmp eax, ecx
ja 0x1400453eb
mov r9, qword [rsp + 0x370]
mov eax, dword [0x1401f3428]
mov ecx, 0x2d92a2d5
xor ecx, 0x90977fde
xor eax, ecx
xor edx, edx
div dword [0x1401f342c]
and eax, 0x6ac5d670
mov ecx, 0x320369c
xor ecx, 0x2adc5c24
xor edx, edx
div ecx
sub eax, 0xa0aa7529
mov ecx, 0x43f9353c
xor ecx, 0xb4d962ae
movabs r8, 0x896466a26b392a36
movabs rdx, 0x896466a26b392a36
xor r8, rdx
sub r8, r9
xor edx, edx
sub rdx, 2
add r8, rdx
xor edx, edx
sub rdx, r8
mov qword [rsp + 0x208], rdx
mov r8, r9
and r8, 0xffffffffffffffff
shl r8, 1
add r9, 0xffffffffffffffff
sub r9, r8
mov r8, rdx
xor r8, r9
xor r8, 0xffffffffffffffff
or rdx, r9
and rdx, r8
cmp rdx, 0
setl dl
mov byte [rsp + 0x216], dl
cmp eax, ecx
ja 0x1400428d1
mov al, byte [rsp + 0x216]
test al, 1
jne 0x140042994
jmp 0x140042b09
mov r11d, dword [0x1401f3430]
xor r11d, 0x57d7c907
or r11d, dword [0x1401f3434]
mov ecx, r11d
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x744a76d2
mov r8d, 0xffffffff
xor r8d, 0x66d39474
mov r9d, 0xe7a6e198
xor r9d, 0x817575ec
mov eax, ecx
and eax, r9d
and r11d, r8d
mov r10d, 0x9b58f70e
xor r10d, 0xfd8b637a
mov r9d, edx
and r9d, r10d
mov r10d, r8d
and r10d, 0x744a76d2
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0xc5a5430c
xor edx, 0xa376d778
or edx, r8d
and ecx, edx
or eax, ecx
mov ecx, 0xd3560325
xor ecx, 0x39957824
sub eax, ecx
sub eax, 0x20dd0c5
mov ecx, 0xe831c773
xor ecx, 0x2f2bc72
add eax, ecx
mov ecx, 0x4e5b90f
xor ecx, 0xb5efa137
and eax, ecx
cmp eax, 0x188a3027
jbe 0x1400453f4
mov ecx, dword [0x1401f3438]
xor ecx, 0x96b3b69b
mov eax, dword [0x1401f343c]
xor eax, 0x3627b849
imul ecx, eax
and ecx, 0xc74ac33b
mov r8d, 0xa65cd905
xor r8d, 0x38b710eb
mov eax, 0xbe76056d
xor eax, 0x4189fa92
xor r8d, eax
mov edx, ecx
and edx, r8d
mov eax, ecx
or eax, r8d
xor eax, 0xffffffff
imul eax, edx
mov r8d, 0x5b4ae644
xor r8d, 0xc5a12faa
mov edx, ecx
and edx, r8d
mov r8d, 0x902ccbb1
xor r8d, 0xec7025f
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x7051d85e
xor eax, 0xffffffff
and ecx, 0x7051d85e
xor ecx, 0xffffffff
mov edx, 0x912955da
xor edx, 0x6ed6aa25
xor eax, edx
xor ecx, 0xffffffff
or eax, ecx
mov dword [rsp + 0x204], eax
call fcn.1400091c0
mov eax, dword [rsp + 0x204]
cmp eax, 0x52808ef9
ja 0x140042a50
jmp 0x140045321
mov rax, qword [rsp + 0x208]
cmp rax, 0
jge 0x140042c9b
mov eax, dword [0x1401f3440]
mov edx, dword [0x1401f3444]
mov ecx, eax
xor ecx, 0xffffffff
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
add eax, 0x2f32166b
mov ecx, 0x8324320b
xor ecx, 0xc40f3faa
sub eax, ecx
sub eax, 0x2f32166b
mov edx, 0x35ab3c59
xor edx, 0x35ab3c58
mov ecx, eax
add ecx, edx
mov edx, 0x229177e3
xor edx, 0xdd6e881c
xor eax, edx
mov edx, 0x1d9115c
xor edx, 0x5a7d4ddd
or eax, edx
add eax, ecx
mov ecx, eax
xor ecx, 0xbe9d11d6
mov edx, 0xafe026d0
xor edx, 0x117d3706
mov r8d, 0x35245c28
xor r8d, 0xcadba3d7
xor edx, r8d
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0xca6d0ebe
jae 0x1400453fd
mov rcx, qword [rsp + 0x208]
mov eax, dword [0x1401f3448]
xor edx, edx
div dword [0x1401f344c]
mov r8d, 0xfea05f2a
xor edx, edx
div r8d
mov r9d, 0x2cc4e499
xor r9d, 0xce7c8f8e
mov edx, 0x2dffd719
xor edx, 0xd20028e6
xor r9d, edx
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
mov r9d, 0x220a9a1f
xor r9d, 0xddf565e0
xor edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xe2b86b17
mov r9d, 0x7c557810
xor r9d, 0x9eed1307
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, 0x8fbc79f
xor edx, 0x30b04401
imul eax, edx
mov dword [rsp + 0x200], eax
mov eax, 0x70739250
xor eax, 0xd9bea74a
mov dword [rsp + 0x1fc], eax
movabs rdx, 0x8b42f531f237e039
movabs rax, 0x8b42f531f237e039
xor rdx, rax
movabs r8, 0x5f9d3b183a41acf0
movabs rax, 0x2062c4e7c5be530f
xor r8, rax
call fcn.14000f6ec
mov ecx, dword [rsp + 0x1fc]
mov eax, dword [rsp + 0x200]
cmp eax, ecx
ja 0x1400453fd
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x208]
call fcn.140018050
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rsp + 0x370]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x1f0], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140042d15
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x1f0]
movabs rax, 0xe3d35748b717ecc5
movabs r8, 0x1c2ca8b748e8133a
xor rax, r8
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r8d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r8d, 6
mov dil, r8b
mov r9b, dil
xor r9b, 0xff
mov r11b, 0x12
xor r11b, 0xd2
mov r8b, 0x87
xor r8b, 0x78
xor r11b, r8b
mov r10b, 0x9f
xor r10b, 0x81
mov r8b, 0x87
xor r8b, 0x78
xor r10b, r8b
mov r8b, r9b
and r8b, 0x1e
and dil, r10b
mov sil, 0x75
xor sil, 0x6b
mov bl, r11b
and bl, sil
mov sil, r10b
and sil, 0xc0
or r8b, dil
or bl, sil
xor r8b, bl
or r9b, r11b
xor r9b, 0xff
or r10b, 0x1e
and r9b, r10b
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
add rax, 1
mov qword [rsp + 0x1e0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1e8], rcx
cmp rax, rcx
jl 0x140042f22
mov r11d, dword [0x1401f3450]
add r11d, dword [0x1401f3454]
mov eax, r11d
and eax, 0x410d0a6
mov ecx, 0xc6e1a3a3
xor ecx, 0xc6e1a3a1
imul eax, ecx
mov ecx, 0x9c121bd8
xor ecx, 0x9802cb7e
xor r11d, ecx
add r11d, eax
xor r11d, 0x4d0f1b67
mov ecx, r11d
xor ecx, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0x94038c34
mov edx, 0xffffffff
xor edx, 0xe338c00d
mov eax, ecx
and eax, 0xe338c00d
and r11d, edx
mov r10d, 0xd165da5a
xor r10d, 0x325d1a57
mov r9d, r8d
and r9d, r10d
mov r10d, edx
and r10d, 0x94038c34
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
mov r8d, 0x4e3977ef
xor r8d, 0xb1c68810
xor ecx, r8d
or edx, 0xe338c00d
and ecx, edx
or eax, ecx
cmp eax, 0xfd351fd4
jae 0x140045406
mov rcx, qword [rsp + 0x1e0]
mov eax, dword [0x1401f3458]
xor edx, edx
div dword [0x1401f345c]
mov rdx, qword [rsp + 0x1e8]
add eax, 0xcb27581
add eax, 0x1b20a53d
sub eax, 0xcb27581
or eax, 0x724c1ce7
mov r10d, 0xffffffff
xor r10d, 0x922cf813
mov r9d, eax
and r9d, r10d
mov r8d, eax
or r8d, r10d
xor r8d, 0xffffffff
imul r8d, r9d
mov r9d, eax
and r9d, 0x922cf813
or eax, 0x922cf813
imul eax, r9d
add eax, r8d
mov dword [rsp + 0x1dc], eax
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140016582
mov eax, dword [rsp + 0x1dc]
cmp eax, 0x88cff844
jbe 0x140042e84
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov ecx, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x1e0]
mov rax, qword [rsp + 0x208]
mov r8b, 0x6c
xor r8b, 0x53
and cl, r8b
mov r8b, 0xd
xor r8b, 0x8d
or cl, r8b
mov qword [rsp + 0x218], rdx
mov byte [rsp + 0x227], cl
mov qword [rsp + 0x228], rax
jmp 0x14004511c
mov eax, dword [rsp + 0x248]
cmp eax, 0x10000
jae 0x140043402
mov rdx, qword [rsp + 0x370]
mov rax, rdx
add rax, 3
mov qword [rsp + 0x1d0], rax
xor rdx, 0xffffffffffffffff
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
cmp rax, 0
jge 0x140042fc8
call fcn.1400091c0
jmp 0x140045321
mov rax, qword [rsp + 0x1d0]
movabs rcx, 0xab48d038e189fd83
movabs rdx, 0xab48d038e189fd83
xor rcx, rdx
cmp rax, rcx
jge 0x140043196
mov ecx, dword [0x1401f3460]
xor ecx, 0x3ed47255
mov eax, dword [0x1401f3464]
sub ecx, 0x4d0b137b
sub ecx, eax
add ecx, 0x4d0b137b
or ecx, 0x42e210eb
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
and eax, 0x41f7c2a3
xor eax, 0xffffffff
mov edx, 0x5ad42b70
xor edx, 0x1b23e9d3
mov r8d, 0x1a80e188
xor r8d, 0x5b77232b
and edx, r8d
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0x4ccb290a
xor ecx, 0xb334d6f5
xor eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0xab0c26c5
xor edx, 0x36413c6f
and ecx, edx
mov edx, 0xffffffff
xor edx, 0x9d4d1aaa
and eax, edx
sub eax, ecx
mov ecx, 0x55c5cb70
xor ecx, 0xf6d21646
cmp eax, ecx
je 0x14004540f
mov rcx, qword [rsp + 0x1d0]
mov r9d, dword [0x1401f3468]
mov eax, dword [0x1401f346c]
mov edx, 0x1f8dfb33
xor edx, 0xf92f65d
xor eax, edx
sub r9d, eax
mov eax, r9d
xor eax, 0x209c45fe
mov edx, 0xffffffff
xor edx, 0x209c45fe
and r9d, edx
shl r9d, 1
sub r9d, eax
mov eax, r9d
xor eax, 0xffffffff
and eax, 0x5c7ef0f6
mov r8d, 0xffffffff
xor r8d, 0x5c7ef0f6
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0x1acf443
and edx, 0x5c7ef0f6
and r8d, 0x1acf443
or eax, r9d
or edx, r8d
xor eax, edx
mov r8d, 0xae63a5ce
xor r8d, 0x353f9b0d
mov edx, 0xf069a80d
xor edx, 0xf9657f2
xor r8d, edx
mov edx, eax
and edx, r8d
mov r9d, 0xcd09a9bd
xor r9d, 0x5655977e
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
mov dword [rsp + 0x1cc], eax
movabs rdx, 0xe91843bdbb66b97f
movabs rax, 0xe91843bdbb66b97f
xor rdx, rax
movabs r8, 0xd964cd538a04454c
movabs rax, 0xa69b32ac75fbbab3
xor r8, rax
call fcn.14000f6ec
mov eax, dword [rsp + 0x1cc]
cmp eax, 0xc0aa62ba
je 0x14004540f
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x1d0]
call fcn.140018050
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rsp + 0x370]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x1c0], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400431fa
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x1c0]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r8d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r8d, 0xc
mov r9b, 0x2e
xor r9b, 0xce
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
mov rdx, 0xffffffffffffffff
xor rdx, 1
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x1b0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1b8], rcx
cmp rax, rcx
jl 0x1400432a9
mov rcx, qword [rsp + 0x1b0]
mov rdx, qword [rsp + 0x1b8]
movabs rax, 0xd719aa41bc603001
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xd719aa41bc603001
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r9d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov r8, qword [rsp + 0x1b0]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r9d, 6
mov r10b, r9b
mov r9b, r10b
xor r9b, 0xff
xor r10b, 0xff
and r9b, r10b
mov r10b, 0x3f
or r10b, 0x3f
xor r10b, 0xff
or r9b, r10b
xor r9b, 0xff
or r9b, 0x80
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs r8, 0xf3fa4076ca8a184f
movabs rdx, 0xf3fa4076ca8a184d
xor r8, rdx
mov rdx, rax
and rdx, r8
movabs r8, 0x6206400e3b438b4b
movabs r9, 0x6206400e3b438b49
xor r8, r9
imul rdx, r8
xor rax, 2
add rax, rdx
mov qword [rsp + 0x1a0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x1a8], rcx
cmp rax, rcx
jl 0x1400433ae
mov rcx, qword [rsp + 0x1a0]
mov rdx, qword [rsp + 0x1a8]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
movabs r8, 0xd699d2e1dfb4a72a
movabs r9, 0x29662d1e204b58d5
xor r8, r9
xor rdx, r8
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov ecx, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x1a0]
mov rax, qword [rsp + 0x1d0]
mov r8b, 0xca
xor r8b, 0xf5
and cl, r8b
mov r8b, 0xf3
xor r8b, 0x73
or cl, r8b
mov qword [rsp + 0x218], rdx
mov byte [rsp + 0x227], cl
mov qword [rsp + 0x228], rax
jmp 0x14004511c
mov eax, dword [rsp + 0x248]
cmp eax, 0x200000
jae 0x140043c8e
mov eax, dword [0x1401f3470]
mov ecx, dword [0x1401f3474]
xor ecx, 0xb127fae0
xor edx, edx
div ecx
mov r8d, eax
or r8d, r8d
mov ecx, 0x390d5d27
xor ecx, 0xc6f2a2d8
xor r8d, ecx
mov ecx, 0x7f7a124e
xor ecx, 0x1418a2c6
mov edx, 0x3da43956
xor edx, 0xc25bc6a9
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x6b62b088
and ecx, edx
or r8d, ecx
xor r8d, 0xffffffff
mov ecx, 0x502f447e
xor ecx, 0x3b4df4f6
or eax, ecx
xor eax, 0xffffffff
xor r8d, 0xffffffff
mov ecx, 0x43c825ca
xor ecx, 0xbc37da35
xor eax, ecx
and r8d, eax
mov eax, 0xe6861217
xor eax, 0x1f662d91
add r8d, eax
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x6d8eedd8
mov r9d, 0x14f9ed75
xor r9d, 0x797700ad
mov ecx, 0x1b0554f1
xor ecx, 0xe4faab0e
xor r9d, ecx
and r8d, r9d
mov ecx, 0x6b49c815
xor ecx, 0x3ccc090e
mov edx, 0xf0c1c42a
xor edx, 0xf3e3bd5
xor ecx, edx
mov edx, 0x4989372a
xor edx, 0x2407daf2
and ecx, edx
mov edx, 0x9e41b741
xor edx, 0xc9c4765a
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov ecx, 0x6adc8cb6
xor ecx, 0xe15908fc
cmp eax, ecx
ja 0x140045418
mov r8, qword [rsp + 0x370]
mov eax, dword [0x1401f3478]
mov edx, dword [0x1401f347c]
mov r9d, 0xd3e708f5
xor r9d, 0x2c18f70a
mov ecx, eax
xor ecx, r9d
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
mov ecx, 0xe72641d7
xor ecx, 0x4302c83f
xor eax, ecx
mov ecx, 0x24f8902a
xor edx, edx
div ecx
mov ecx, 0x2378f544
xor ecx, 0x2378f544
mov edx, 0xe7655028
xor edx, 0x3592edae
sub ecx, edx
sub eax, ecx
mov rcx, r8
add rcx, 4
mov qword [rsp + 0x190], rcx
movabs rdx, 0xbb2ed8db99d1aa12
movabs r9, 0x44d12724662e55ed
xor rdx, r9
xor r8, rdx
mov rdx, rcx
xor rdx, r8
xor rdx, 0xffffffffffffffff
or rcx, r8
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rsp + 0x19f], cl
cmp eax, 0xa0d0b749
je 0x140043511
mov al, byte [rsp + 0x19f]
test al, 1
jne 0x1400435d6
jmp 0x1400435e0
call fcn.1400091c0
jmp 0x140045321
mov rax, qword [rsp + 0x190]
cmp rax, 0
jge 0x1400436dd
mov eax, dword [0x1401f3480]
xor eax, 0xcaf852cc
xor eax, dword [0x1401f3484]
or eax, 0xfc407a5e
mov edx, 0x1afafc8e
xor edx, 0x76250772
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, 0x6cdffbfc
sub eax, ecx
mov ecx, 0x683632a3
xor edx, edx
div ecx
mov ecx, 0x217b052a
xor ecx, 0xf3197be3
cmp eax, ecx
ja 0x140045421
mov rcx, qword [rsp + 0x190]
mov edx, dword [0x1401f3488]
mov r8d, dword [0x1401f348c]
xor r8d, 0x42180d50
mov r9d, 0x8742935a
xor r9d, 0x78bd6ca5
mov eax, edx
xor eax, r9d
mov r10d, 0x80494291
xor r10d, 0x7fb6bd6e
mov r9d, r8d
xor r9d, r10d
and eax, r9d
xor edx, 0xffffffff
mov r9d, 0x7a827176
xor r9d, 0x857d8e89
xor r8d, r9d
and edx, r8d
or eax, edx
xor eax, 0xffffffff
and eax, 0x6c2f1661
imul eax, eax, 0x49b30b6
add eax, 0x332504b4
mov dword [rsp + 0x18c], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000f6ec
mov eax, dword [rsp + 0x18c]
cmp eax, 0x95aff8f7
jbe 0x14004363d
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x190]
call fcn.140018050
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rsp + 0x370]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x180], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140043741
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x180]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r8d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov rax, qword [rsp + 0x370]
mov ecx, 0x8d0b5bc2
xor ecx, 0x8d0b5bd0
shr r8d, cl
mov rcx, qword [rsp + 0x3f0]
mov r9b, r8b
mov r10b, 0x2e
xor r10b, 0xde
mov r8b, r9b
and r8b, r10b
xor r9b, 0xf0
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
movabs rdx, 0x1258094729ebd81e
add rax, rdx
add rax, 1
movabs rdx, 0x1258094729ebd81e
sub rax, rdx
mov qword [rsp + 0x170], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x178], rcx
cmp rax, rcx
jl 0x1400438f9
mov eax, dword [0x1401f3490]
mov ecx, dword [0x1401f3494]
mov edx, 0x51b26bd2
xor edx, 0xe6c5fe68
xor ecx, edx
add eax, ecx
mov r8d, 0x27b6d400
xor r8d, 0xf9e50daa
mov ecx, 0x74a4753e
xor ecx, 0x8b5b8ac1
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x65f96bfd
xor r8d, 0xbbaab257
mov edx, eax
and edx, r8d
or eax, 0xde53d9aa
imul eax, edx
add eax, ecx
mov ecx, 0x7851f2d
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0x7d22e1e8
add eax, ecx
add eax, 1
cmp eax, 0x33963f38
jbe 0x14004542a
mov rcx, qword [rsp + 0x170]
mov eax, dword [0x1401f3498]
add eax, dword [0x1401f349c]
mov r8d, 0xacf94fd5
xor r8d, 0xbe21c6e4
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x178]
or eax, 0x5fd9514
mov r8d, 0x60805206
xor r8d, 0xc6f18d28
sub eax, r8d
mov dword [rsp + 0x16c], eax
movabs rax, 0x5380867a6054c192
movabs r8, 0x71483a41450c9467
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x35225b9f7c258382
movabs r8, 0x17eae7a4597dd677
xor rax, r8
sub rdx, rax
call fcn.140016582
mov eax, dword [rsp + 0x16c]
cmp eax, 0xc2f00720
je 0x14004542a
jmp 0x140045321
mov ecx, dword [0x1401f34a0]
or ecx, dword [0x1401f34a4]
xor ecx, 0x732bbb44
xor ecx, 0x672749b2
mov eax, ecx
and eax, 0x81fe3b54
xor ecx, 0x81fe3b54
or eax, ecx
cmp eax, 0x5402b75
je 0x140045433
mov rcx, qword [rsp + 0x3f0]
mov edx, dword [0x1401f34a8]
mov r9d, dword [0x1401f34ac]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, edx
and r8d, r10d
mov eax, edx
or eax, r10d
mov r10d, 0xa769c1a5
xor r10d, 0x58963e5a
xor eax, r10d
imul eax, r8d
mov r8d, edx
and r8d, r9d
or edx, r9d
imul edx, r8d
add edx, eax
mov eax, 0x7ba426e
xor eax, 0x695205bc
and edx, eax
mov eax, 0x5c47a192
xor eax, 0x4fb17566
mov r8d, 0x8fde2421
xor r8d, 0x7021dbde
xor eax, r8d
add edx, eax
mov eax, 0x5f458572
xor eax, 0x5f458573
add edx, eax
mov r8d, 0xffffffff
xor r8d, 0x1a7d022
mov eax, edx
xor eax, r8d
and eax, edx
mov dword [rsp + 0x154], eax
mov eax, 0x44cdc7bf
xor eax, 0xe3452823
mov dword [rsp + 0x150], eax
call fcn.1400454a0
mov r11d, dword [rsp + 0x248]
mov r9, qword [rsp + 0x3d0]
mov r10, qword [rsp + 0x170]
mov rdx, qword [rsp + 0x370]
mov r8, qword [rsp + 0x3f0]
mov ecx, dword [rsp + 0x150]
mov eax, dword [rsp + 0x154]
shr r11d, 0xc
xor r11b, 0xff
mov bl, 0xff
xor bl, 0x3f
mov sil, 0xff
xor sil, 0x58
or r11b, bl
mov bl, 0xd2
xor bl, 0x8a
or bl, sil
xor r11b, 0xff
and r11b, bl
or r11b, 0x80
mov r9, qword [r9]
mov byte [r9 + r10 + 8], r11b
xor r9d, r9d
sub r9, 2
sub rdx, r9
mov qword [rsp + 0x158], rdx
mov r8, qword [r8]
mov qword [rsp + 0x160], r8
cmp rdx, r8
setl dl
mov byte [rsp + 0x16b], dl
cmp eax, ecx
je 0x14004392b
mov al, byte [rsp + 0x16b]
test al, 1
jne 0x140043aba
jmp 0x140043a88
mov rcx, qword [rsp + 0x158]
mov rdx, qword [rsp + 0x160]
mov rax, 0xffffffffffffffff
xor rax, 0xffffffffffffffff
xor r8d, r8d
sub r8, 1
sub rax, r8
sub rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r9d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov r8, qword [rsp + 0x158]
mov rax, qword [rsp + 0x370]
mov ecx, 0x8fc1c747
xor ecx, 0x8fc1c741
shr r9d, cl
mov rcx, qword [rsp + 0x3f0]
mov r10b, r9b
add r10b, 1
xor r9b, 0xff
mov r11b, 0x2e
xor r11b, 0x11
or r9b, r11b
add r9b, r10b
mov r10b, 0xb1
xor r10b, 0x31
and r10b, r9b
xor r10b, 0xff
add r9b, 0x80
add r9b, 1
add r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
add rax, 3
mov qword [rsp + 0x140], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x148], rcx
cmp rax, rcx
jl 0x140043c2d
mov eax, dword [0x1401f34b0]
mov ecx, dword [0x1401f34b4]
mov edx, 0xef135f9d
xor edx, 0xb21a5881
xor ecx, edx
and eax, ecx
and eax, 0x13e47caa
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x596674bb
add eax, ecx
xor eax, 0x2de5a7ad
cmp eax, 0x5996d441
je 0x14004543c
mov rcx, qword [rsp + 0x140]
mov edx, dword [0x1401f34b8]
or edx, dword [0x1401f34bc]
mov r8d, 0x68bb493
xor r8d, 0x912d9f49
mov eax, edx
xor eax, r8d
xor eax, 0xffffffff
and eax, 0x97a62bda
shl eax, 1
sub eax, 0x97a62bda
sub edx, eax
mov r8d, 0x33375c12
xor r8d, 0x151140e4
mov eax, edx
and eax, r8d
or edx, 0x26261cf6
add eax, edx
mov r8d, 0x764847c6
xor edx, edx
div r8d
mov edx, eax
mov rax, qword [rsp + 0x148]
mov dword [rsp + 0x13c], edx
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140016582
mov eax, dword [rsp + 0x13c]
cmp eax, 0x35c34d57
ja 0x14004543c
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov ecx, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x140]
mov rax, qword [rsp + 0x190]
mov r8b, cl
and r8b, 0x3f
mov r9b, 0x99
xor r9b, 0x19
mov cl, r8b
and cl, r9b
mov r9b, 2
xor r9b, 0x82
xor r8b, r9b
or cl, r8b
mov qword [rsp + 0x218], rdx
mov byte [rsp + 0x227], cl
mov qword [rsp + 0x228], rax
jmp 0x14004511c
mov eax, dword [0x1401f34c0]
mov ecx, dword [0x1401f34c4]
xor ecx, 0x79ea091e
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x2c467b1b
mov edx, 0x73217065
xor edx, 0x5f670b7e
mov r8d, 0x9c9ebbf
xor r8d, 0xf6361440
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0x795fab08
xor ecx, 0x3d22a1ea
and eax, ecx
and eax, 0xb59dd18e
cmp eax, 0x3e35d226
ja 0x140045445
mov edx, dword [rsp + 0x248]
mov eax, dword [0x1401f34c8]
mov r8d, dword [0x1401f34cc]
xor eax, 0xffffffff
xor r8d, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x2451d767
or eax, r8d
or ecx, 0x2451d767
xor eax, 0xffffffff
and eax, ecx
mov r9d, 0xffffffff
xor r9d, 0x934083c1
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, r8d
mov r8d, eax
and r8d, 0x934083c1
mov r9d, 0x9500e01a
xor r9d, 0x64063db
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, eax
and ecx, 0x58f9c884
mov r8d, 0x5f7cbe71
xor r8d, 0xa083418e
xor ecx, r8d
add eax, 0x58f9c884
add eax, 1
add eax, ecx
mov r9d, 0x5f58bce2
xor r9d, 0x6870c751
mov ecx, 0x4d40b89d
xor ecx, 0xb2bf4762
xor r9d, ecx
mov r8d, eax
and r8d, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, r8d
mov r8d, eax
and r8d, 0x37287bb3
mov r9d, 0x14b33457
xor r9d, 0x239b4fe4
or eax, r9d
imul eax, r8d
add eax, ecx
mov ecx, 0xdb4c9d98
xor ecx, 0x7e9e403c
mov r8d, 0x55f33a3f
xor r8d, 0x51f33a3f
cmp edx, r8d
setb dl
mov byte [rsp + 0x13b], dl
cmp eax, ecx
je 0x140043ceb
mov al, byte [rsp + 0x13b]
test al, 1
jne 0x140043e0e
jmp 0x14004456e
mov rdx, qword [rsp + 0x370]
mov rax, rdx
add rax, 5
mov qword [rsp + 0x130], rax
mov rcx, rdx
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
movabs r8, 0xd563ef2d5249f860
movabs r9, 0x2a9c10d2adb6079f
xor r8, r9
movabs r9, 0x83846be7714d8c58
movabs r10, 0x7c7b94188eb273a7
xor r9, r10
xor r8, r9
and rdx, r8
or rcx, rdx
and rax, rcx
movabs rcx, 0x6342876b26a7cf7a
movabs rdx, 0x6342876b26a7cf7a
xor rcx, rdx
cmp rax, rcx
jge 0x140043e94
call fcn.1400091c0
jmp 0x140045321
mov eax, dword [0x1401f34d0]
mov ecx, dword [0x1401f34d4]
mov edx, 0x8aed7e4e
xor edx, 0x6bb072e8
xor ecx, edx
sub eax, ecx
mov ecx, 0x426b5106
xor edx, edx
div ecx
imul eax, eax, 0x7f22c730
mov ecx, 0x9f582e59
xor ecx, 0x6c94afb5
xor eax, ecx
cmp eax, 0x770f88ac
jbe 0x14004544e
mov rcx, qword [rsp + 0x130]
mov eax, dword [0x1401f34d8]
mov edx, 0x15df5009
xor edx, 0x586817b1
xor eax, edx
mov r8d, dword [0x1401f34dc]
mov r9d, 0x9364a770
xor r9d, 0x6c9b588f
mov edx, eax
xor edx, r9d
and edx, r8d
mov r9d, 0x9c996ad8
xor r9d, 0x63669527
xor r8d, r9d
and eax, r8d
sub eax, edx
mov edx, 0xbcc8e45b
xor edx, 0xfebffece
sub eax, edx
mov edx, 0xfc99ba20
xor edx, 0x3f3769c
add eax, edx
add eax, 0x42771a95
xor eax, 0xffffffff
mov r8d, 0xffffffff
xor r8d, 0xa30c2237
mov edx, 0x194af5e9
xor edx, 0x75b8055f
mov r9d, 0x934b23be
xor r9d, 0x6cb4dc41
xor edx, r9d
or eax, r8d
or edx, 0x6cf2f0b6
xor eax, 0xffffffff
and eax, edx
mov edx, 0x40239a2
xor edx, 0xfbfdc65d
mov r8d, eax
xor r8d, edx
and r8d, 0xe672e52e
mov r9d, 0xffffffff
xor r9d, 0xe672e52e
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xe672e52e
or eax, 0xe672e52e
imul eax, r8d
add eax, edx
cmp rcx, 0
setl cl
mov byte [rsp + 0x12f], cl
cmp eax, 0xfd008779
jae 0x14004544e
mov al, byte [rsp + 0x12f]
test al, 1
jne 0x140043fea
jmp 0x14004402a
mov rcx, qword [rsp + 0x130]
movabs rdx, 0x8c482ade9d30000
movabs rax, 0x8c482ade9d30000
xor rdx, rax
movabs r8, 0x2c33194460c982d3
movabs rax, 0x53cce6bb9f367d2c
xor r8, rax
call fcn.14000f6ec
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x130]
call fcn.140018050
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rsp + 0x370]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x120], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400440c2
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x120]
movabs rax, 0xfef344db5758e1da
movabs r8, 0xc11343a91d5f1d2c
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x76e809dc66c3bfe2
movabs r8, 0x49080eae2cc44314
xor rax, r8
sub rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r8d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r8d, 0x18
mov r9b, 0x37
xor r9b, 0xcf
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
movabs rdx, 0x77e9351071172528
movabs r8, 0x77e9351071172529
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x110], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x118], rcx
cmp rax, rcx
jl 0x140044163
mov rcx, qword [rsp + 0x110]
mov rax, qword [rsp + 0x118]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov eax, dword [0x1401f34e0]
mov edx, dword [0x1401f34e4]
mov ecx, 0x2d9a8d8c
xor ecx, 0x71719a19
xor edx, ecx
xor ecx, ecx
sub ecx, edx
sub eax, ecx
mov ecx, 0x4c99488f
xor ecx, 0x51757038
xor eax, ecx
mov ecx, 0xd54f06fc
xor edx, edx
div ecx
mov edx, eax
mov eax, 0x13f1c128
xor eax, 0x1c192529
mov ecx, edx
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0xfe8e401
and edx, eax
mov eax, 0x1e3cd5d5
xor eax, 0x1e3cd5d7
imul eax, edx
sub eax, ecx
cmp eax, 0x7328f6ea
jbe 0x140045457
mov rcx, qword [rsp + 0x3f0]
mov eax, dword [0x1401f34e8]
mov r8d, dword [0x1401f34ec]
xor r8d, 0xe19de260
xor edx, edx
div r8d
mov edx, 0xffffffff
xor edx, 0x2cb401d3
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
mov r8d, 0x7699eeb9
xor edx, edx
div r8d
mov edx, 0x1c503584
xor edx, 0xe3afca7b
mov r8d, eax
xor r8d, edx
and r8d, 0x2adf9f6
mov r9d, 0xffffffff
xor r9d, 0x2adf9f6
mov edx, eax
and edx, r9d
imul edx, r8d
mov r9d, 0x2e6b720a
xor r9d, 0x2cc68bfc
mov r8d, eax
and r8d, r9d
or eax, 0x2adf9f6
imul eax, r8d
add eax, edx
mov dword [rsp + 0xf4], eax
call fcn.1400454a0
mov r10d, dword [rsp + 0x248]
mov r8, qword [rsp + 0x3d0]
mov r9, qword [rsp + 0x110]
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x3f0]
mov eax, dword [rsp + 0xf4]
shr r10d, 0x12
mov r14b, r10b
and r14b, 0x3f
mov r11b, r14b
xor r11b, 0xff
mov sil, 0xff
xor sil, 0x80
mov bl, 0xff
xor bl, 0x15
mov dil, 0x44
xor dil, 0x51
mov r10b, r11b
and r10b, dil
and r14b, bl
mov dil, sil
and dil, 0x15
mov bpl, bl
and bpl, 0x80
or r10b, r14b
or dil, bpl
xor r10b, dil
or r11b, sil
xor r11b, 0xff
or bl, 0x15
and r11b, bl
or r10b, r11b
mov r8, qword [r8]
mov byte [r8 + r9 + 8], r10b
movabs r8, 0xc22be74e7f39335f
movabs r9, 0xc22be74e7f39335d
xor r8, r9
add rcx, r8
mov qword [rsp + 0xf8], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x100], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x10f], cl
cmp eax, 0x45456d2c
ja 0x140045457
mov al, byte [rsp + 0x10f]
test al, 1
jne 0x14004436c
jmp 0x14004434e
mov rcx, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0x100]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r9d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov r8, qword [rsp + 0xf8]
mov rax, qword [rsp + 0x370]
mov ecx, 0x722696c6
xor ecx, 0x722696ca
shr r9d, cl
mov rcx, qword [rsp + 0x3f0]
mov r11b, 0xa2
xor r11b, 0x9d
mov r10b, r9b
xor r10b, r11b
xor r10b, 0xff
or r9b, 0x3f
and r9b, r10b
mov r11b, 0x21
xor r11b, 0xa1
mov r10b, 0xee
xor r10b, 0x11
xor r11b, r10b
mov r10b, r9b
and r10b, r11b
mov bl, 0xc4
xor bl, 0x44
mov r11b, r9b
xor r11b, bl
add r9b, r11b
sub r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xeda4028158899b01
movabs r8, 0xeda4028158899b02
xor rdx, r8
add rax, rdx
mov qword [rsp + 0xe0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xe8], rcx
cmp rax, rcx
jl 0x14004444b
mov rcx, qword [rsp + 0xe0]
mov rdx, qword [rsp + 0xe8]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r9d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov r8, qword [rsp + 0xe0]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r9d, 6
mov r11b, 0xc6
xor r11b, 0xf9
mov r10b, 0x7c
xor r10b, 0x83
xor r11b, r10b
mov r10b, r9b
xor r10b, r11b
and r10b, r9b
mov r9b, r10b
or r9b, 0x80
xor r9b, 0xff
xor r10b, 0xff
mov r11b, 0xe6
xor r11b, 0x66
mov bl, 0x38
xor bl, 0xc7
xor r11b, bl
and r10b, r11b
xor r9b, 0xff
xor r10b, 0xff
and r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
add rax, 4
mov qword [rsp + 0xd0], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xd8], rcx
cmp rax, rcx
jl 0x140044510
mov rcx, qword [rsp + 0xd0]
mov rdx, qword [rsp + 0xd8]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov ecx, dword [rsp + 0x248]
mov rdx, qword [rsp + 0xd0]
mov rax, qword [rsp + 0x130]
mov r8b, cl
mov cl, 0xe0
xor cl, 0xdf
and r8b, cl
mov cl, r8b
and cl, 0x80
mov r9b, 0x19
xor r9b, 0x99
xor r8b, r9b
or cl, r8b
mov qword [rsp + 0x218], rdx
mov byte [rsp + 0x227], cl
mov qword [rsp + 0x228], rax
jmp 0x14004511c
mov rax, qword [rsp + 0x240]
mov ecx, dword [rsp + 0x248]
cmp ecx, 0xffffffff
mov qword [rsp + 0x378], rax
jle 0x1400400c1
mov eax, dword [0x1401f34f0]
mov ecx, dword [0x1401f34f4]
xor ecx, 0xffffffff
xor edx, edx
sub edx, 1
sub ecx, edx
sub eax, ecx
xor eax, 0xebdf6b2b
mov ecx, 0x80b5da90
xor ecx, 0xd09f7be3
add eax, ecx
and eax, 0x243d2c25
cmp eax, 0xd777a23b
ja 0x140045460
mov r9, qword [rsp + 0x370]
mov r8d, dword [0x1401f34f8]
add r8d, dword [0x1401f34fc]
mov eax, r8d
xor eax, 0xffffffff
and eax, 0x2921ffc3
mov r10d, 0x744fd64c
xor r10d, 0x5d6e298f
mov ecx, 0x5a1188ab
xor ecx, 0xa5ee7754
xor r10d, ecx
and r8d, r10d
mov ecx, 0x2ff113e3
xor ecx, 0xfbe5a361
mov edx, 0xc280363
xor edx, 0xf3d7fc9c
xor ecx, edx
and ecx, 0x2921ffc3
mov edx, 0x3085ee5e
xor edx, 0xe4915edc
and edx, r10d
or eax, r8d
or ecx, edx
xor eax, ecx
imul eax, eax, 0xbe7c1e0
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x33251073
mov edx, 0xffffffff
xor edx, 0x33251073
and eax, edx
sub eax, ecx
mov ecx, 0x724a86ea
xor ecx, 0xeb522d97
mov r8, 0xffffffffffffffff
xor r8, 6
xor edx, edx
sub rdx, 1
sub r8, rdx
mov rdx, r9
sub rdx, r8
mov qword [rsp + 0xc0], rdx
mov r8, r9
xor r8, 0xffffffffffffffff
movabs r11, 0x75c761e6c7b0e646
movabs r10, 0x8a389e19384f19b9
xor r11, r10
mov r10, r9
xor r10, r11
and r8, r10
movabs r10, 0x9b083c8f637e200b
movabs r11, 0x64f7c3709c81dff4
xor r10, r11
movabs r11, 0x7b7493ebe81e4ef2
movabs rsi, 0x848b6c1417e1b10d
xor r11, rsi
or r10, r11
xor r10, 0xffffffffffffffff
movabs r11, 0xda0987b4b2b75fa0
movabs rsi, 0x25f6784b4d48a05f
xor r11, rsi
xor r8, r11
xor r10, 0xffffffffffffffff
and r8, r10
xor r9, 0xffffffffffffffff
movabs r10, 0xb72dea77461acdf8
movabs r11, 0x48d21588b9e53207
xor r10, r11
movabs r11, 0x9d13ee0b2573e5dd
movabs rsi, 0x62ec11f4da8c1a22
xor r11, rsi
xor r10, r11
and r9, r10
or r8, r9
movabs r9, 0x543f215948f20f4b
movabs r10, 0xabc0dea6b70df0b4
xor r9, r10
xor r8, r9
and rdx, r8
movabs r8, 0x9d9de3ca0c8e491e
movabs r9, 0x9d9de3ca0c8e491e
xor r8, r9
cmp rdx, r8
setl dl
mov byte [rsp + 0xcf], dl
cmp eax, ecx
jbe 0x1400445c8
mov al, byte [rsp + 0xcf]
test al, 1
jne 0x14004479c
jmp 0x140044834
mov eax, dword [0x1401f3500]
mov edx, dword [0x1401f3504]
mov r8d, 0x8fc90175
xor r8d, 0x7036fe8a
mov ecx, eax
xor ecx, r8d
and ecx, edx
mov r8d, 0xb934f5a9
xor r8d, 0x46cb0a56
xor edx, r8d
and eax, edx
sub eax, ecx
mov ecx, 0x9e1641af
xor ecx, 0xcad96e2
and eax, ecx
mov ecx, 0xae22db9f
xor edx, edx
div ecx
add eax, 0x452485d1
cmp eax, 0x2c6fb77e
jbe 0x140045469
mov eax, dword [0x1401f3508]
sub eax, dword [0x1401f350c]
and eax, 0xd580c174
or eax, 0x892d1fd
sub eax, 0x9fd8c01a
mov dword [rsp + 0xbc], eax
call fcn.1400091c0
mov eax, dword [rsp + 0xbc]
cmp eax, 0xae7ba1b7
je 0x1400447f6
jmp 0x140045321
mov rax, qword [rsp + 0xc0]
cmp rax, 0
jge 0x1400449b1
mov eax, dword [0x1401f3510]
xor eax, 0x60e9a292
mov edx, dword [0x1401f3514]
mov r8d, 0xdf1e111d
xor r8d, 0xdf1e111c
mov ecx, eax
add ecx, r8d
xor eax, 0xffffffff
or eax, edx
add eax, ecx
mov ecx, 0x6e87b083
xor edx, edx
div ecx
mov ecx, 0xe0279b73
xor ecx, 0xf9c82575
or eax, ecx
add eax, 0xefd9bffe
cmp eax, 0x14da93e1
ja 0x140045472
mov rcx, qword [rsp + 0xc0]
mov esi, dword [0x1401f3518]
add esi, dword [0x1401f351c]
mov eax, esi
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xdbe50a6f
mov r8d, 0xffffffff
xor r8d, 0xbbf66539
mov r9d, eax
and r9d, 0xbbf66539
and esi, r8d
mov r11d, 0x4c4ced5b
xor r11d, 0xf7ba8862
mov r10d, edx
and r10d, r11d
mov r11d, 0x8a303117
xor r11d, 0x51d53b78
and r11d, r8d
or r9d, esi
or r10d, r11d
xor r9d, r10d
or eax, edx
mov edx, 0x59b9cbef
xor edx, 0xa6463410
xor eax, edx
mov edx, 0x40362f39
xor edx, 0xfbc04a00
or edx, r8d
and eax, edx
or r9d, eax
mov eax, r9d
xor eax, 0xffffffff
and eax, 0xd79dd6b8
mov r10d, 0xffffffff
xor r10d, 0xd79dd6b8
and r9d, r10d
mov edx, 0xffffffff
xor edx, 0x2ebf5579
and edx, 0xd79dd6b8
mov r8d, 0xef09a83a
xor r8d, 0xc1b6fd43
and r8d, r10d
or eax, r9d
or edx, r8d
xor eax, edx
or eax, 0x54cda61
mov dword [rsp + 0xb8], eax
mov eax, 0xf2322e73
xor eax, 0x644da173
mov dword [rsp + 0xb4], eax
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000f6ec
mov ecx, dword [rsp + 0xb4]
mov eax, dword [rsp + 0xb8]
cmp eax, ecx
jbe 0x140044896
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0xc0]
call fcn.140018050
mov rdx, qword [rsp + 0x3f0]
mov rcx, qword [rsp + 0x370]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0xa8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140044ad8
mov eax, dword [0x1401f3520]
mov ecx, dword [0x1401f3524]
xor ecx, 0xb1ecda19
xor ecx, 0xffffffff
add eax, ecx
mov ecx, 0x5c19f1cf
xor ecx, 0x5c19f1ce
add eax, ecx
mov ecx, 0x62321d93
xor ecx, 0x155a92ec
imul eax, ecx
mov ecx, 0xe39ad591
xor edx, edx
div ecx
mov ecx, 0xabe4040c
xor ecx, 0xd2a9f6ab
and eax, ecx
cmp eax, 0x9937baa
jae 0x14004547b
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0xa8]
mov eax, dword [0x1401f3528]
mov r9d, dword [0x1401f352c]
mov r8d, eax
and r8d, r9d
mov r10d, 0x86d07804
xor r10d, 0x86d07806
imul r8d, r10d
xor eax, r9d
add eax, r8d
sub eax, 0x38e1ee24
or eax, 0xa45fc89f
mov r9d, 0xffffffff
xor r9d, 0x10fdd610
mov r8d, eax
and r8d, r9d
mov r9d, eax
xor r9d, 0x10fdd610
add eax, r9d
sub eax, r8d
mov dword [rsp + 0xa4], eax
add rdx, 0xffffffffffffffff
call fcn.140016582
mov eax, dword [rsp + 0xa4]
cmp eax, 0x30802d47
jbe 0x140044a4a
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r8d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov rax, qword [rsp + 0x370]
mov ecx, 0x68699dec
xor ecx, 0x68699df2
shr r8d, cl
mov rcx, qword [rsp + 0x3f0]
mov r9b, 0x2c
xor r9b, 0xd0
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
xor edx, edx
sub rdx, 1
sub rax, rdx
mov qword [rsp + 0x90], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x98], rcx
cmp rax, rcx
jl 0x140044b8f
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
movabs rax, 0xdb6c73ea1f8d88c2
movabs r8, 0xc2758cad9d1256a8
xor rax, r8
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x1919ff47829fde6a
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r9d, dword [rsp + 0x248]
mov rax, qword [rsp + 0x3d0]
mov r8, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r9d, 0x18
mov r10b, 0x81
xor r10b, 0x7e
xor r9b, r10b
mov r11b, 0xff
xor r11b, 0x3f
mov r10b, 0xff
xor r10b, 0xeb
or r9b, r11b
or r10b, 0xeb
xor r9b, 0xff
and r9b, r10b
or r9b, 0x80
mov rax, qword [rax]
mov byte [rax + r8 + 8], r9b
movabs r8, 0x23e985c2ce3d7c69
movabs rax, 0x23e985c2ce3d7c6b
xor r8, rax
mov rax, rdx
and rax, r8
movabs r8, 0xf5f9b81d2e81dab6
movabs r9, 0xf5f9b81d2e81dab4
xor r8, r9
or rdx, r8
add rax, rdx
mov qword [rsp + 0x80], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x88], rcx
cmp rax, rcx
jl 0x140044c95
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x88]
movabs rax, 0xb67277bb4a531102
movabs r8, 0xfdb98e55e0bbcb88
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x4bcbf9eeaae8da8a
sub rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r9d, dword [rsp + 0x248]
mov rax, qword [rsp + 0x3d0]
mov r8, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r9d, 0x12
mov bpl, r9b
and bpl, 0x3f
mov r10b, bpl
xor r10b, 0xff
mov bl, 0xff
xor bl, 0x80
mov r11b, 0xff
xor r11b, 0xb6
mov r9b, r10b
and r9b, 0xb6
and bpl, r11b
mov sil, bl
and sil, 0xb6
mov dil, r11b
and dil, 0x80
or r9b, bpl
or sil, dil
xor r9b, sil
or r10b, bl
xor r10b, 0xff
or r11b, 0xb6
and r10b, r11b
or r9b, r10b
mov rax, qword [rax]
mov byte [rax + r8 + 8], r9b
movabs r8, 0xc1f911db13be51fa
movabs rax, 0xc1f911db13be51f9
xor r8, rax
mov rax, rdx
and rax, r8
or rdx, 3
add rax, rdx
mov qword [rsp + 0x70], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x78], rcx
cmp rax, rcx
jl 0x140044eb5
mov eax, dword [str.Nh_4]
mov ecx, 0xc2914592
xor ecx, 0xbf87f8f3
xor eax, ecx
mov ecx, dword [0x1401f3534]
mov edx, 0xa6b82b63
xor edx, 0xb03d837b
xor ecx, edx
sub eax, ecx
xor ecx, ecx
sub ecx, 0x8e94fe02
add eax, ecx
add eax, 0xb3f0b5df
mov edx, 0xdf52ba2e
xor edx, 0x20ad45d1
mov ecx, eax
xor ecx, edx
mov edx, 0xbe428008
xor edx, 0xb63d4c57
and ecx, edx
mov edx, 0x8f3ace1e
xor edx, 0x87450241
mov r8d, 0xbeed388f
xor r8d, 0x4112c770
xor edx, r8d
and eax, edx
sub eax, ecx
cmp eax, 0xc0bfc5e5
jb 0x140045484
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x1401f3538]
xor eax, 0x2963c784
xor edx, edx
div dword [0x1401f353c]
mov r9d, eax
mov edx, r9d
xor edx, 0xffffffff
mov eax, 0x331a8379
xor eax, 0x69a34d58
and eax, edx
mov r8d, 0x917b88dc
xor r8d, 0xcbc246fd
mov edx, 0x4f0c6844
xor edx, 0xb0f397bb
xor r8d, edx
and r9d, r8d
mov edx, 0xffffffff
xor edx, 0xc1a138bb
mov r10d, 0x8962b5ef
xor r10d, 0xd3db7bce
and edx, r10d
and r8d, 0xc1a138bb
or eax, r9d
or edx, r8d
xor eax, edx
mov r8d, 0x566c968f
xor r8d, 0xc93ed5f0
mov edx, 0xdd6b7ecc
xor edx, 0x22948133
xor r8d, edx
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, 0x9f52437f
add eax, r8d
sub eax, edx
mov r8d, 0x1443adc1
xor r8d, 0x72a7aff3
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x78]
mov dword [rsp + 0x6c], eax
add rdx, 0xffffffffffffffff
call fcn.140016582
mov eax, dword [rsp + 0x6c]
cmp eax, 0x102b462f
je 0x140045484
jmp 0x140045321
mov eax, dword [0x1401f3540]
sub eax, dword [0x1401f3544]
and eax, 0x4f1b7a79
or eax, 0xc158b38b
sub eax, 0x22e6efc3
mov ecx, 0x1abf2277
xor ecx, 0xc874b344
cmp eax, ecx
jae 0x14004548d
mov rcx, qword [rsp + 0x3f0]
mov eax, dword [0x1401f3548]
mov r8d, dword [0x1401f354c]
xor r8d, 0xfc6b0202
xor edx, edx
div r8d
xor eax, 0xd912050b
mov r8d, 0xa6ce54ce
xor edx, edx
div r8d
imul eax, eax, 0x4e40c800
mov dword [rsp + 0x54], eax
call fcn.1400454a0
mov r10d, dword [rsp + 0x248]
mov r8, qword [rsp + 0x3d0]
mov r9, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x370]
mov rdx, qword [rsp + 0x3f0]
mov eax, dword [rsp + 0x54]
shr r10d, 0xc
and r10b, 0x3f
or r10b, 0x80
mov r8, qword [r8]
mov byte [r8 + r9 + 8], r10b
movabs r8, 0xf0051c89edf27f49
sub rcx, r8
movabs r8, 0xb882f01592e0c60
movabs r9, 0xb882f01592e0c64
xor r8, r9
add rcx, r8
movabs r8, 0xf0051c89edf27f49
add rcx, r8
mov qword [rsp + 0x58], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x60], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x6b], cl
cmp eax, 0x4195a2db
jb 0x14004548d
mov al, byte [rsp + 0x6b]
test al, 1
jne 0x14004501c
jmp 0x140044fc7
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
movabs rax, 0xa9b6acd4ef06fa7
movabs r8, 0x556b3c05106528be
xor rax, r8
sub rdx, rax
movabs rax, 0x97afb8c393f60bf1
movabs r8, 0x6850473c6c09f40e
xor rax, r8
add rdx, rax
movabs rax, 0x5ff056c85e954719
add rdx, rax
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov r9d, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x3d0]
mov r8, qword [rsp + 0x58]
mov rax, qword [rsp + 0x370]
mov rcx, qword [rsp + 0x3f0]
shr r9d, 6
and r9b, 0x3f
mov r10b, 0xb
xor r10b, 0x8b
or r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xc2582fd261d6a835
movabs r8, 0xc2582fd261d6a830
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x40], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x48], rcx
cmp rax, rcx
jl 0x1400450b0
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
add rdx, 0xffffffffffffffff
call fcn.140016582
jmp 0x140045321
mov rcx, qword [rsp + 0x3f0]
call fcn.1400454a0
mov ecx, dword [rsp + 0x248]
mov rdx, qword [rsp + 0x40]
mov rax, qword [rsp + 0xc0]
mov r8b, cl
mov cl, r8b
xor cl, 0xff
mov r9b, 0xff
xor r9b, 0x3f
or cl, r9b
mov r9b, 0xa
xor r9b, 0xf5
xor r8b, r9b
mov r9b, 0xff
xor r9b, 0x3f
or r8b, r9b
xor cl, 0xff
xor r8b, 0xff
or cl, r8b
or cl, 0x80
mov qword [rsp + 0x218], rdx
mov byte [rsp + 0x227], cl
mov qword [rsp + 0x228], rax
mov rax, qword [rsp + 0x218]
mov cl, byte [rsp + 0x227]
mov rdx, qword [rsp + 0x228]
mov qword [rsp + 0x28], rdx
mov byte [rsp + 0x37], cl
mov qword [rsp + 0x38], rax
mov ecx, dword [0x1401f3550]
mov edx, dword [0x1401f3554]
mov r8d, 0x296a738b
xor r8d, 0xd6958c74
mov eax, ecx
xor eax, r8d
mov r8d, edx
xor r8d, 0xffffffff
or eax, r8d
mov r8d, 0x9e7b46bc
xor r8d, 0x6184b943
xor ecx, r8d
mov r8d, 0x9095de61
xor r8d, 0x6f6a219e
xor edx, r8d
or ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
xor ecx, ecx
sub ecx, 0x292307c6
sub eax, ecx
mov ecx, eax
xor ecx, 0xed7357f9
xor ecx, 0xffffffff
and ecx, 0xed7357f9
shl ecx, 1
sub ecx, 0xed7357f9
sub eax, ecx
mov edx, 0x9cf6513b
xor edx, 0x6309aec4
mov ecx, eax
xor ecx, edx
and ecx, 0x9bbea0a0
mov edx, 0xffffffff
xor edx, 0x9bbea0a0
and eax, edx
sub eax, ecx
cmp eax, 0x7c451768
je 0x140045496
mov rdx, qword [rsp + 0x38]
mov r8b, byte [rsp + 0x37]
mov rcx, qword [rsp + 0x3d0]
mov r9d, dword [0x1401f3558]
xor r9d, 0x7aa9ef1b
mov r10d, dword [0x1401f355c]
xor eax, eax
sub eax, r9d
xor r9d, r9d
sub r9d, r10d
add eax, r9d
mov r9d, 0x991b30e3
xor r9d, 0x991b30e3
sub r9d, eax
mov eax, 0xdfbe6708
xor eax, 0xc9258740
imul r9d, eax
mov eax, 0xd4626785
xor eax, 0xc9d9312c
sub r9d, eax
sub r9d, 0x21ba592b
add r9d, 0x1dbb56a9
mov eax, r9d
and eax, eax
mov r10d, 0xc11fd20b
xor r10d, 0x3ee02df4
xor eax, r10d
mov r10d, 0x6d1a46dd
xor r10d, 0x92e5b922
xor eax, r10d
mov r10d, 0xffffffff
xor r10d, 0x9f59601f
or eax, r10d
mov r10d, 0xffffffff
xor r10d, 0x9f59601f
mov r11d, 0x30abbf73
xor r11d, 0xaff2df6c
mov esi, 0x5bc58615
xor esi, 0xa43a79ea
xor r11d, esi
or r10d, r11d
mov r11d, 0xcafab5db
xor r11d, 0x35054a24
xor r9d, r11d
mov r11d, 0x39f9a099
xor r11d, 0xc6065f66
xor r10d, r11d
or r9d, r10d
and eax, r9d
mov r9d, 0x549f9270
xor r9d, 0xab606d8f
xor eax, r9d
mov rcx, qword [rcx]
mov byte [rcx + rdx + 8], r8b
cmp eax, 0x3530c453
je 0x140045496
mov rax, qword [rsp + 0x240]
mov rcx, qword [rsp + 0x28]
mov qword [rsp + 0x3d8], rcx
mov qword [rsp + 0x3e0], rax
jmp 0x1400400a1
mov rax, qword [rsp + 0x3f8]
add rsp, 0x420
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
and byte [rcx], dh
or eax, 0xadfde931
invalid
cmp byte [rdi - 0x17], r14b
invalid
mov cl, byte [rbp - 0x25]
invalid
jg 0x14004539e
enter 0xffffffffffffe95e, 0xffffffffffffffb2
mov dl, 0xff
invalid
std
retf
xor al, 0x24
push rbx
invalid
push rsi
mov esp, 0x93e90b2f
mov bh, 0xff
call [rdi]
jmp 0xf9db3d2d
invalid
insd dword [rdi], dx
pop bp
or eax, 0xffbabde9
push qword [rdx + rdx*2 - 0x55166c47]
mov ebp, 0x64d5ffff
std
and ecx, ebp
invalid
mov ah, 0x52
mov ecx, 0xbdaae993
invalid
invalid
xor dword [rax - 0x55], esi
invalid
jmp 0x1400414e9
insb byte [rdi], dx
pop rbp
and al, 0xe9
test al, 0xc2
invalid
invalid
pop rsp
push 0x29e9020d
enter 0xffffffffffffffff, 0x66
ret 0x5b9f
ret 0x5b9f
sbb al, 0x48
mov ebx, 0xcb4ae9b8
invalid
fidivr dword [rdx - 0x6d161152]
int 0xff
call qword [rdi - 0x1683acf4]
xchg edi, eax
or al, 0x53
jl 0x1400453c7
add edi, ecx
invalid
outsd dx, dword [rsi]
rcl byte [rbx]
jmp 0x14004277c
movsb byte [rdi], byte [rsi]
and edx, esi
mov ecx, 0xffd4dde9
call qword [rbx]
test byte [rax], dh
or ebp, ecx
push rbx
invalid
invalid
adc eax, dword [rax + rsi - 0x29ac16f5]
invalid
sub ah, byte [rcx + 0x24]
jmp 0x1400453eb
xchg ecx, eax
cld
adc eax, 0xffda75e9
inc dword [rdx - 0x160c1761]
js 0x1400453f2
invalid
invalid
cmpsb byte [rsi], byte [rdi]
xor byte [rax], dl
mov edx, 0xffe0f0e9
dec eax
out dx, al
add cl, byte [rcx + rbp*8]
adc esp, edx
invalid
enter 0x2ee, 0xc
jmp 0x14004363d
xchg esi, eax
sbb al, 0xe1
xchg esp, eax
jmp 0x14004385b
mov esp, edx
sbb dword [rcx], ebx
jmp 0x14004392b
sahf
sahf
wait
mov gs, ecx
push rax
out 0xff, eax
dec dword [rbx]
lodsb al, byte [rsi]
mov ebp, 0xe89de93d
or ebp, dword [rbp + rdi*4 - 0x176216c3]
invalid
invalid
sal dword cs:[rdi - 0x1291168d], 0xff
jmp qword [rbp - 0x5d]
movabs dword gs:[0x49fffff15fe9ba92], eax
movabs eax, dword [0xcfffff384e9f3be]
movabs rax, qword [0xcfffff384e9f3be]
or al, 0x41
sbb al, ch
sbb al, r13b
jmp 0x140044896
push rbp
fst dword [rbp - 0xa3916cf]
invalid
sbb ah, dh
fidivr word [rcx]
jmp 0x140044dd9
nop
invalid
invalid