Function at 0x140035770
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x380
mov qword [rsp + 0x360], r8
mov qword [rsp + 0x348], rdx
mov qword [rsp + 0x350], rcx
mov qword [rsp + 0x358], rcx
call fcn.140035746
mov r8, qword [rsp + 0x360]
mov qword [rsp + 0x368], rax
cmp r8, 0
jge 0x1400357d9
mov rcx, qword [rsp + 0x360]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000c4b0
jmp 0x14003925a
mov rdx, qword [rsp + 0x360]
lea rcx, [rsp + 0x370]
call fcn.140018530
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x350]
movups xmm0, xmmword [rsp + 0x370]
movups xmmword [rax], xmm0
mov r9, rcx
add r9, 0xfffffffffffffffa
mov qword [rsp + 0x2e0], r9
mov r8, rcx
not r8
mov rdx, r9
or rdx, r8
not r9
or r9, rcx
and rdx, r9
xor rdx, 0xffffffffffffffff
sets r9b
mov rdx, rcx
sub rdx, 6
setge dl
and dl, r9b
mov byte [rsp + 0x2ef], dl
mov rdx, rcx
add rdx, 0xfffffffffffffffb
mov qword [rsp + 0x2f0], rdx
mov r9, r8
xor r9, rdx
mov r10, rcx
and r10, r9
add r10, r10
mov r9, rcx
sub r9, r10
add rdx, r9
setns r9b
mov rdx, rcx
sub rdx, 5
setl dl
or dl, r9b
xor dl, 1
mov byte [rsp + 0x2ff], dl
mov rdx, rcx
add rdx, 0xfffffffffffffffc
mov qword [rsp + 0x300], rdx
movabs r10, 0x64fac2c63bd973aa
and r8, r10
movabs r11, 0x9b053d39c4268c55
mov r9, rcx
and r9, r11
xor rdx, r10
or r8, r9
xor rdx, r8
sets r9b
mov rdx, rcx
sub rdx, 4
setge dl
setl r8b
or r8b, r9b
add dl, r8b
inc dl
mov byte [rsp + 0x30f], dl
mov rdx, 0xffffffffffffffff
xor rdx, 0xfffffffffffffffd
xor r8d, r8d
sub r8, 1
sub rdx, r8
mov r10, rcx
sub r10, rdx
mov qword [rsp + 0x310], r10
mov rdx, r10
xor rdx, 0xffffffffffffffff
movabs r8, 0xc4250065924dd509
and rdx, r8
mov r11, 0xffffffffffffffff
movabs r8, 0xc4250065924dd509
xor r11, r8
and r10, r11
mov r8, rcx
xor r8, 0xffffffffffffffff
movabs r9, 0xc4250065924dd509
and r8, r9
mov r9, rcx
and r9, r11
or rdx, r10
or r8, r9
xor rdx, r8
cmp rdx, 0
setl r8b
movabs rdx, 0xecc825b512a58322
movabs r9, 0xecc825b512a58320
xor rdx, r9
cmp rcx, rdx
setg dl
and dl, r8b
mov byte [rsp + 0x31f], dl
mov r8, rcx
add r8, 0xfffffffffffffffe
mov qword [rsp + 0x320], r8
mov rdx, r8
or rdx, rdx
movabs r9, 0xd606432424c3b635
movabs r10, 0x29f9bcdbdb3c49ca
xor r9, r10
xor rdx, r9
mov r9, rcx
xor r9, 0xffffffffffffffff
movabs r11, 0x329b9474ff56b1a1
movabs r10, 0xcd646b8b00a94e5e
xor r11, r10
mov r10, rcx
xor r10, r11
and r9, r10
or rdx, r9
movabs r9, 0x20ca4b31f4b29e5b
movabs r10, 0xdf35b4ce0b4d61a4
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
mov r9, rcx
xor r9, 0xffffffffffffffff
and r8, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
cmp rdx, 0
setl r8b
cmp rcx, 1
setg cl
mov dl, cl
xor dl, r8b
xor dl, 0xff
or cl, r8b
and cl, dl
mov byte [rsp + 0x32f], cl
add rax, 8
mov qword [rsp + 0x330], rax
xor eax, eax
mov rcx, rax
mov qword [rsp + 0x338], rcx
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x338]
mov rcx, qword [rsp + 0x340]
mov qword [rsp + 0x2d0], rcx
mov qword [rsp + 0x2d8], rax
mov eax, dword [0x1401d9770]
imul eax, dword [0x1401d9774]
mov ecx, 0x93ddc272
xor ecx, 0x609abcb5
or eax, ecx
mov ecx, eax
xor ecx, 0xeced2d11
xor ecx, 0xffffffff
or eax, 0xeced2d11
and eax, ecx
mov ecx, 0x57aeed0a
xor edx, edx
div ecx
mov ecx, 0x6f93104f
xor ecx, 0xe221f3f5
cmp eax, ecx
ja 0x14003926d
mov eax, dword [0x1401d9778]
mov ecx, dword [0x1401d977c]
xor ecx, 0x4ae9726
or eax, ecx
imul ecx, eax, 0x46ab8453
mov edx, 0xffffffff
xor edx, 0x2bf6c980
mov eax, ecx
xor eax, edx
and eax, ecx
and eax, 0xdae57ee7
cmp eax, 0x3b060519
ja 0x14003926d
mov rax, qword [rsp + 0x2d0]
mov qword [rsp + 0x2c8], rax
jmp 0x140035b09
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c8]
mov qword [rsp + 0x2c0], rax
cmp rax, rcx
jge 0x14003925a
mov eax, dword [0x1401d9780]
mov ecx, dword [0x1401d9784]
xor ecx, 0xaff143e3
xor eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x3b1d0ead
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x3b1d0ead
or eax, 0x3b1d0ead
imul eax, edx
add eax, ecx
imul eax, eax, 0x6aef3750
imul eax, eax, 0xbbc9f8d0
mov ecx, 0xa994f1e4
xor ecx, 0x69d8a021
cmp eax, ecx
ja 0x140039276
mov rcx, qword [rsp + 0x348]
mov eax, dword [0x1401d9788]
mov edx, 0x425f058d
xor edx, 0x191eb649
xor eax, edx
add eax, dword [0x1401d978c]
mov r8d, 0x86da1686
xor edx, edx
div r8d
add eax, 0x4ced3783
mov r8d, 0xe375d6a3
xor edx, edx
div r8d
mov rdx, qword [rsp + 0x2c0]
mov cl, byte [rcx + rdx]
mov byte [rsp + 0x2be], cl
cmp cl, 0xff
setg cl
mov byte [rsp + 0x2bf], cl
cmp eax, 0x8e35a5cd
jae 0x140035b8c
mov al, byte [rsp + 0x2bf]
test al, 1
jne 0x140035c06
jmp 0x140035c35
mov rax, qword [rsp + 0x2c0]
mov cl, byte [rsp + 0x2be]
movzx ecx, cl
xor edx, edx
sub rdx, 1
sub rax, rdx
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jmp 0x140036e0c
mov al, byte [rsp + 0x2be]
movzx eax, al
mov qword [rsp + 0x2a0], rax
and rax, 0xe0
cmp rax, 0xc0
jne 0x140035ed9
mov al, byte [rsp + 0x32f]
test al, 1
jne 0x140035c6d
jmp 0x140035da7
mov ecx, dword [0x1401d9790]
xor ecx, 0xee7581f4
and ecx, dword [0x1401d9794]
add ecx, 0xf80d5f4f
mov edx, 0x33624b2f
xor edx, 0x2fb09d4b
mov eax, ecx
or eax, edx
mov edx, 0x24ab4c18
xor edx, 0xdb54b3e7
xor eax, edx
mov edx, 0x449ae838
xor edx, 0xbb6517c7
xor ecx, edx
mov edx, 0xffffffff
xor edx, 0x1cd2d664
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xd1e595c2
xor ecx, 0x7f6613cc
sub eax, ecx
cmp eax, 0x3dc30c5b
jbe 0x14003927f
mov eax, dword [0x1401d9798]
mov ecx, 0x9987071
xor ecx, 0xa310ce60
xor eax, ecx
imul eax, dword [0x1401d979c]
mov ecx, 0x586419ed
xor ecx, 0xa79be612
mov edx, eax
xor edx, ecx
mov ecx, eax
xor ecx, 0xffffffff
and edx, ecx
mov ecx, 0x564f8e6e
or ecx, 0x564f8e6e
xor ecx, 0xffffffff
or edx, ecx
xor edx, 0xffffffff
xor eax, 0xffffffff
mov ecx, 0xffffffff
xor ecx, 0x564f8e6e
and eax, ecx
xor edx, 0xffffffff
mov ecx, 0x23fac7c0
xor ecx, 0xdc05383f
xor eax, ecx
and edx, eax
and edx, 0x2dd65a50
mov eax, 0x93fd0b44
xor eax, 0xe956cba1
mov ecx, edx
xor ecx, eax
mov eax, 0xffffffff
xor eax, 0x7aabc0e5
and edx, eax
mov eax, 0x354ef7d7
xor eax, 0x354ef7d5
imul eax, edx
sub eax, ecx
mov dword [rsp + 0x29c], eax
mov eax, 0x468b62bd
xor eax, 0x1e2f3472
mov dword [rsp + 0x298], eax
call fcn.140007bb8
mov ecx, dword [rsp + 0x298]
mov eax, dword [rsp + 0x29c]
cmp eax, ecx
jb 0x140035cdb
jmp 0x14003925a
mov rdx, qword [rsp + 0x2c0]
mov r8, qword [rsp + 0x320]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x290], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jg 0x140036e0c
mov rax, qword [rsp + 0x290]
mov rcx, qword [rsp + 0x360]
cmp rax, rcx
jl 0x140035e50
mov rcx, qword [rsp + 0x290]
mov rax, qword [rsp + 0x360]
movabs r8, 0x4ee19674918f3b71
movabs rdx, 0xb11e698b6e70c48e
xor r8, rdx
mov rdx, rax
and rdx, r8
movabs r8, 0xe919792c0b9e1d95
movabs r9, 0x16e686d3f461e26a
xor r8, r9
or rax, r8
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rax, qword [rsp + 0x2c0]
mov rdx, qword [rsp + 0x348]
mov r8, qword [rsp + 0x290]
mov cl, byte [rsp + 0x2be]
and cl, 0x1f
movzx r9d, cl
mov ecx, 0xdcbd119f
xor ecx, 0xdcbd1199
shl r9d, cl
mov ecx, r9d
mov dl, byte [rdx + r8]
mov r8b, 0x68
xor r8b, 0x57
and dl, r8b
movzx edx, dl
or ecx, edx
movabs rdx, 0x1e980bfa7cef0b86
movabs r8, 0x45abbdca0a2b7a23
xor rdx, r8
sub rax, rdx
add rax, 2
movabs rdx, 0x5b33b63076c471a5
add rax, rdx
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jmp 0x140036e0c
mov rax, qword [rsp + 0x2a0]
xor rax, 0xffffffffffffffff
mov rdx, 0xffffffffffffffff
xor rdx, 0xf0
movabs rcx, 0x64d427ed880688cd
movabs r8, 0x64bfa25818fbb120
xor rcx, r8
movabs r8, 0x69244483cbfff022
movabs r9, 0x96dbbb7c34000fdd
xor r8, r9
xor rcx, r8
or rax, rdx
movabs rdx, 0x6b85b590fd39ed
or rcx, rdx
xor rax, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x8124c6348a3b8d67
movabs rdx, 0x8124c6348a3b8d87
xor rcx, rdx
cmp rax, rcx
jne 0x140036107
mov al, byte [rsp + 0x31f]
test al, 1
jne 0x140035f6f
jmp 0x140035f79
call fcn.140007bb8
jmp 0x14003925a
mov rdx, qword [rsp + 0x2c0]
mov r8, qword [rsp + 0x310]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x288], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jg 0x140036e0c
mov rax, qword [rsp + 0x288]
mov rcx, qword [rsp + 0x360]
cmp rax, rcx
jl 0x140035ffb
mov rcx, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x360]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
movabs rdx, 0x77aa8eafb89cd7c0
add rax, rdx
add rax, 2
movabs rdx, 0xfd65e05958afb963
movabs r8, 0x8acf6ef6e0336ea3
xor rdx, r8
sub rax, rdx
mov qword [rsp + 0x280], rax
cmp rax, rcx
jl 0x140036065
mov rcx, qword [rsp + 0x280]
mov rdx, qword [rsp + 0x360]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rax, qword [rsp + 0x2c0]
mov rcx, qword [rsp + 0x348]
mov r8, qword [rsp + 0x280]
mov rdx, qword [rsp + 0x288]
mov r9b, byte [rsp + 0x2be]
and r9b, 0xf
movzx r9d, r9b
shl r9d, 0xc
mov r10b, byte [rcx + rdx]
mov r11b, 0xde
xor r11b, 0xe1
mov dl, 0x69
xor dl, 0x96
xor r11b, dl
mov dl, r10b
xor dl, r11b
and dl, r10b
movzx edx, dl
shl edx, 6
or edx, r9d
mov r8b, byte [rcx + r8]
mov r9b, 0xff
xor r9b, 0x3f
mov cl, r8b
xor cl, r9b
and cl, r8b
movzx r8d, cl
mov ecx, edx
and ecx, r8d
xor edx, r8d
or ecx, edx
xor edx, edx
sub rdx, rax
xor eax, eax
sub rax, 3
add rdx, rax
xor eax, eax
sub rax, rdx
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jmp 0x140036e0c
mov eax, dword [0x1401d97a0]
mov ecx, dword [0x1401d97a4]
mov edx, eax
or edx, ecx
mov r8d, 0xc1c8f102
xor r8d, 0x3e370efd
xor edx, r8d
or eax, ecx
xor eax, 0xffffffff
or edx, eax
xor edx, 0xffffffff
mov ecx, edx
xor ecx, 0x9b9a889f
mov eax, 0x749570cd
xor eax, 0xef0ff852
mov r8d, 0x9bc5cb1f
xor r8d, 0x643a34e0
xor eax, r8d
and edx, eax
mov eax, 0x10f443b1
xor eax, 0x10f443b3
imul eax, edx
sub eax, ecx
mov ecx, 0x891c9ea9
xor edx, edx
div ecx
mov ecx, 0xff2c0d55
xor edx, edx
div ecx
cmp eax, 0x44fad6e3
ja 0x140039288
mov r8, qword [rsp + 0x2a0]
mov eax, dword [0x1401d97a8]
mov ecx, 0x2e02dddd
xor ecx, 0xf6e5fe5
xor eax, ecx
xor edx, edx
div dword [0x1401d97ac]
xor ecx, ecx
sub ecx, 0x24e903b8
sub eax, ecx
mov ecx, 0x6597970f
xor edx, edx
div ecx
and eax, 0x30e21e78
mov ecx, 0xaa2caec2
xor ecx, 0xcf1ada5d
mov rdx, r8
xor rdx, 0xffffffffffffffff
movabs r9, 0xc735335f87d66da2
movabs r10, 0xc735335f87d66d5a
xor r9, r10
movabs r10, 0xbf177857f80ca355
movabs r11, 0x40e887a807f35caa
xor r10, r11
xor r9, r10
or rdx, r9
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xf8
or r8, r9
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
or rdx, r8
cmp rdx, 0xf0
sete dl
mov byte [rsp + 0x27f], dl
cmp eax, ecx
je 0x140036181
mov al, byte [rsp + 0x27f]
test al, 1
jne 0x14003624f
jmp 0x14003661c
mov al, byte [rsp + 0x30f]
test al, 1
jne 0x140036263
jmp 0x140036342
mov ecx, dword [0x1401d97b0]
xor ecx, 0x69533d73
mov edx, dword [0x1401d97b4]
xor ecx, 0xffffffff
xor edx, 0xffffffff
mov eax, 0x81338a31
xor eax, 0xb045f577
mov r8d, 0x8790d83d
xor r8d, 0x786f27c2
xor eax, r8d
or ecx, edx
or eax, 0x31767f46
xor ecx, 0xffffffff
and ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xd480933d
and eax, edx
mov edx, 0x6c268116
xor edx, 0xb8a6122b
or ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, 0xaa3943e9
xor ecx, 0xd5f09007
and eax, ecx
add eax, 0x47acdb10
mov ecx, 0x81e7b040
xor ecx, 0x92e304cf
cmp eax, ecx
jbe 0x140039291
mov eax, dword [0x1401d97b8]
mov ecx, dword [0x1401d97bc]
xor ecx, 0x85e79456
xor edx, edx
div ecx
add eax, 0x9ce328cf
sub eax, 0x31e6516d
sub eax, 0x9ce328cf
or eax, 0x15a755bc
sub eax, 0xa742cec1
mov dword [rsp + 0x278], eax
call fcn.140007bb8
mov eax, dword [rsp + 0x278]
cmp eax, 0x8367abc7
jae 0x140039291
jmp 0x14003925a
mov rdx, qword [rsp + 0x2c0]
mov r8, qword [rsp + 0x300]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x270], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jg 0x140036e0c
mov rax, qword [rsp + 0x270]
mov rcx, qword [rsp + 0x360]
cmp rax, rcx
jl 0x1400363cf
mov rcx, qword [rsp + 0x270]
mov rdx, qword [rsp + 0x360]
movabs rax, 0x770a16b066add6a7
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x770a16b066add6a7
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
mov rdx, rax
and rdx, 2
shl rdx, 1
xor rax, 2
add rax, rdx
mov qword [rsp + 0x268], rax
cmp rax, rcx
jl 0x140036447
mov rcx, qword [rsp + 0x268]
mov rdx, qword [rsp + 0x360]
movabs rax, 0xb57539512417988f
movabs r8, 0x5a28bb08477a95c6
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xef5d8259636d0d49
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
movabs rdx, 0x71fdaaaccbd47cb3
movabs r8, 0x3008e96c08eb4498
xor rdx, r8
sub rax, rdx
add rax, 3
movabs rdx, 0xc0ccfdb2c71692ad
movabs r8, 0x8139be720429aa86
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x260], rax
cmp rax, rcx
jl 0x1400364c8
mov rcx, qword [rsp + 0x260]
mov rax, qword [rsp + 0x360]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rax, qword [rsp + 0x2c0]
mov rcx, qword [rsp + 0x348]
mov rdx, qword [rsp + 0x260]
mov r9, qword [rsp + 0x268]
mov r8, qword [rsp + 0x270]
mov r11b, byte [rsp + 0x2be]
mov bl, 0xff
xor bl, 7
mov r10b, r11b
xor r10b, bl
and r10b, r11b
movzx r11d, r10b
shl r11d, 0x12
mov r8b, byte [rcx + r8]
xor r8b, 0xff
mov r10b, 0xdb
xor r10b, 0xe4
mov bl, 0x1c
xor bl, 0xe3
xor r10b, bl
mov bl, 0xff
xor bl, 0xe6
or r8b, r10b
mov r10b, 3
xor r10b, 0xe5
or r10b, bl
xor r8b, 0xff
and r8b, r10b
movzx r8d, r8b
shl r8d, 0xc
mov r10d, r11d
and r10d, r8d
xor r10d, 0xffffffff
add r8d, r11d
mov r11d, 0xc35a4c3b
xor r11d, 0xc35a4c3a
add r8d, r11d
add r8d, r10d
mov r9b, byte [rcx + r9]
mov r10b, r9b
xor r10b, 0x3f
xor r10b, 0xff
or r9b, 0x3f
and r9b, r10b
movzx r9d, r9b
shl r9d, 6
mov esi, r8d
and esi, r9d
xor r8d, r9d
or esi, r8d
mov cl, byte [rcx + rdx]
mov dl, 0x62
xor dl, 0x5d
and cl, dl
movzx r11d, cl
mov ecx, 0xb134a943
xor ecx, 0x4ecb56bc
mov edx, esi
xor edx, ecx
mov ecx, 0x997cd555
xor ecx, 0x66832aaa
mov r9d, r11d
xor r9d, ecx
mov r8d, 0xffffffff
xor r8d, 0x86ba716a
mov ecx, edx
and ecx, 0x86ba716a
and esi, r8d
mov edi, 0x5da59cfb
xor edi, 0xdb1fed91
mov r10d, r9d
and r10d, edi
and r11d, r8d
or ecx, esi
or r10d, r11d
xor ecx, r10d
or edx, r9d
xor edx, 0xffffffff
or r8d, 0x86ba716a
and edx, r8d
or ecx, edx
add rax, 4
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jmp 0x140036e0c
mov rax, qword [rsp + 0x2a0]
and rax, 0xfc
cmp rax, 0xf8
jne 0x140036a9c
mov al, byte [rsp + 0x2ff]
test al, 1
jne 0x14003664a
jmp 0x140036654
call fcn.140007bb8
jmp 0x14003925a
mov rdx, qword [rsp + 0x2c0]
mov r8, qword [rsp + 0x2f0]
mov rax, rdx
and rax, 1
mov rcx, rdx
or rcx, 1
add rax, rcx
mov qword [rsp + 0x258], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jg 0x140036e0c
mov rax, qword [rsp + 0x258]
mov rcx, qword [rsp + 0x360]
cmp rax, rcx
jl 0x1400366f8
mov rcx, qword [rsp + 0x258]
mov rdx, qword [rsp + 0x360]
movabs rax, 0xb3d2d91706ed59c6
movabs r8, 0xbc4e5ab49eb9fc12
xor rax, r8
sub rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0xf9c83a39854a5d4
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
add rax, 2
mov qword [rsp + 0x250], rax
cmp rax, rcx
jl 0x14003674a
mov rcx, qword [rsp + 0x250]
mov rdx, qword [rsp + 0x360]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
add rax, 3
mov qword [rsp + 0x248], rax
cmp rax, rcx
jl 0x1400368b9
mov ecx, dword [0x1401d97c0]
mov eax, 0x7baf1af5
xor eax, 0x5bdc7aa8
xor ecx, eax
mov edx, dword [0x1401d97c4]
mov eax, 0x564765f1
xor eax, 0x33b9d2ec
xor edx, eax
mov eax, ecx
and eax, edx
xor eax, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
xor eax, 0xffffffff
xor ecx, 0xffffffff
or eax, ecx
and eax, 0x7df97596
mov r8d, 0xadaf4212
xor r8d, 0x3dc2c597
mov ecx, 0x4ff9a3d8
xor ecx, 0xb0065c27
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x906d8785
or eax, 0x906d8785
imul eax, edx
add eax, ecx
sub eax, 0x5e594221
cmp eax, 0xf237ab06
je 0x14003929a
mov rcx, qword [rsp + 0x248]
mov rdx, qword [rsp + 0x360]
mov eax, dword [0x1401d97c8]
imul eax, dword [0x1401d97cc]
mov r9d, 0x5d1b6c02
xor r9d, 0x2adbd8c8
mov r8d, eax
xor r8d, r9d
mov r9d, 0xffffffff
xor r9d, 0x77c0b4ca
and eax, r9d
shl eax, 1
sub eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x47d89d82
add eax, r8d
add eax, 1
mov r9d, 0x9e3ec398
xor r9d, 0xd761cc04
mov r8d, eax
xor r8d, r9d
xor r8d, 0xffffffff
mov r9d, 0x1b54c94e
xor r9d, 0x520bc6d2
or eax, r9d
and eax, r8d
mov dword [rsp + 0x244], eax
movabs rax, 0xda8604b3a8f27bea
movabs r8, 0x2579fb4c570d8415
xor rax, r8
add rdx, rax
call fcn.140012270
mov eax, dword [rsp + 0x244]
cmp eax, 0xd29904b2
je 0x14003929a
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rdx, qword [rsp + 0x2c0]
movabs r8, 0x262994b81c588f3c
movabs rax, 0x262994b81c588f38
xor r8, rax
mov rax, rdx
and rax, r8
or rdx, 4
add rax, rdx
mov qword [rsp + 0x238], rax
cmp rax, rcx
jl 0x140036932
mov rcx, qword [rsp + 0x238]
mov rdx, qword [rsp + 0x360]
movabs rax, 0x5f8f8e4e243b7b0f
movabs r8, 0xa07071b1dbc484f0
xor rax, r8
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rax, qword [rsp + 0x2c0]
mov rdx, qword [rsp + 0x348]
mov r8, qword [rsp + 0x238]
mov r9, qword [rsp + 0x248]
mov r10, qword [rsp + 0x250]
mov cl, byte [rsp + 0x2be]
and cl, 3
movzx esi, cl
mov ecx, 0x6ca6022
xor ecx, 0x6ca603a
shl esi, cl
mov rcx, qword [rsp + 0x258]
mov cl, byte [rdx + rcx]
mov r11b, cl
xor r11b, 0x3f
mov bl, 0x4e
xor bl, 0xb1
xor r11b, bl
mov bl, 0xf0
xor bl, 0xcf
or cl, bl
and cl, r11b
movzx r11d, cl
shl r11d, 0x12
mov ecx, r11d
or ecx, esi
mov edi, 0x249ce2f
xor edi, 0xfdb631d0
xor ecx, edi
or r11d, esi
xor r11d, 0xffffffff
xor ecx, 0xffffffff
xor r11d, 0xffffffff
and ecx, r11d
mov r10b, byte [rdx + r10]
xor r10b, 0xff
mov r11b, 0xff
xor r11b, 0x3f
mov bl, 0xff
xor bl, 0xe5
or r10b, r11b
mov r11b, 0x5d
xor r11b, 0xb8
or r11b, bl
xor r10b, 0xff
and r10b, r11b
movzx r10d, r10b
shl r10d, 0xc
or ecx, r10d
mov r10b, byte [rdx + r9]
mov r9b, r10b
xor r9b, 0xff
mov r11b, 0xff
xor r11b, 0x3f
or r9b, r11b
xor r10b, 0xff
mov r11b, 0x26
xor r11b, 0x19
mov bl, 0x64
xor bl, 0x9b
xor r11b, bl
or r10b, r11b
xor r9b, 0xff
xor r10b, 0xff
or r9b, r10b
movzx r9d, r9b
shl r9d, 6
or ecx, r9d
mov dl, byte [rdx + r8]
mov r8b, 0x71
xor r8b, 0x4e
and dl, r8b
movzx edx, dl
or ecx, edx
movabs rdx, 0x273f7155a3efe318
movabs r8, 0x273f7155a3efe31d
xor rdx, r8
movabs r8, 0xc4230d9de445da28
movabs r9, 0x3bdcf2621bba25d7
xor r8, r9
xor rdx, r8
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jmp 0x140036e0c
mov rcx, qword [rsp + 0x2a0]
mov rdx, 0xffffffffffffffff
xor rdx, 0xfe
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0xfc
jne 0x140036db7
mov al, byte [rsp + 0x2ef]
test al, 1
jne 0x140036adb
jmp 0x140036ae5
call fcn.140007bb8
jmp 0x14003925a
mov rdx, qword [rsp + 0x2c0]
mov r8, qword [rsp + 0x2e0]
xor eax, eax
mov ecx, eax
sub rcx, rdx
xor eax, eax
sub rax, 1
add rcx, rax
movabs rax, 0x3cd66523b3b4b974
movabs r9, 0x3cd66523b3b4b974
xor rax, r9
sub rax, rcx
mov qword [rsp + 0x230], rax
mov ecx, 0xfffd
cmp rdx, r8
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jg 0x140036e0c
mov rax, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x360]
cmp rax, rcx
jl 0x140036b91
mov rcx, qword [rsp + 0x230]
mov rdx, qword [rsp + 0x360]
movabs rax, 0xf7f8f8c2a8898dae
movabs r8, 0x807073d57767251
xor rax, r8
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
add rax, 2
mov qword [rsp + 0x228], rax
cmp rax, rcx
jl 0x140036bd4
mov rcx, qword [rsp + 0x228]
mov rdx, qword [rsp + 0x360]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
add rax, 3
mov qword [rsp + 0x220], rax
cmp rax, rcx
jl 0x140036c3b
mov rcx, qword [rsp + 0x220]
mov rdx, qword [rsp + 0x360]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
movabs rdx, 0x33c78cf7a3864d3e
movabs r8, 0x33c78cf7a3864d3e
xor rdx, r8
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
movabs rdx, 0x626fd0e729e010fd
add rax, rdx
add rax, 4
movabs rdx, 0x626fd0e729e010fd
sub rax, rdx
mov qword [rsp + 0x218], rax
cmp rax, rcx
jl 0x140036c98
mov rcx, qword [rsp + 0x218]
mov rdx, qword [rsp + 0x360]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x360]
mov rax, qword [rsp + 0x2c0]
xor edx, edx
sub rdx, 5
sub rax, rdx
mov qword [rsp + 0x210], rax
cmp rax, rcx
jl 0x140036ce0
mov rcx, qword [rsp + 0x210]
mov rdx, qword [rsp + 0x360]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rax, qword [rsp + 0x2c0]
mov rcx, qword [rsp + 0x348]
mov rdx, qword [rsp + 0x210]
mov r9, qword [rsp + 0x230]
mov r8b, byte [rsp + 0x2be]
mov r10b, r8b
not r10b
or r10b, 1
add r8b, r10b
inc r8b
movzx r8d, r8b
shl r8d, 0x1e
movd xmm1, dword [rcx + r9]
pcmpeqd xmm0, xmm0
pxor xmm1, xmm0
movaps xmm2, xmmword [0x1401e5660]
por xmm1, xmm2
pxor xmm1, xmm0
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
movaps xmm2, xmmword [0x1401e5670]
movaps xmm0, xmm1
pmuludq xmm0, xmm2
pshufd xmm0, xmm0, 0xe8
pshufd xmm1, xmm1, 0xf5
movaps xmm2, xmmword [0x1401e5680]
pmuludq xmm1, xmm2
pshufd xmm1, xmm1, 0xe8
punpckldq xmm0, xmm1
mov cl, byte [rcx + rdx]
mov dl, cl
xor dl, 0xc0
or cl, 0x3f
and cl, dl
movzx edx, cl
pshufd xmm1, xmm0, 0xee
por xmm0, xmm1
pshufd xmm1, xmm0, 0x55
por xmm0, xmm1
movd ecx, xmm0
or ecx, r8d
or ecx, edx
add rax, 6
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
jmp 0x140036e0c
mov rax, qword [rsp + 0x2c0]
mov cl, byte [rsp + 0x2be]
movzx ecx, cl
movabs rdx, 0x9cb06f297fb5ae70
movabs r8, 0x9cb06f297fb5ae70
xor rdx, r8
movabs r8, 0x1c106f0da926a693
movabs r9, 0x1c106f0da926a692
xor r8, r9
sub rdx, r8
sub rax, rdx
mov dword [rsp + 0x2ac], ecx
mov qword [rsp + 0x2b0], rax
mov ecx, dword [rsp + 0x2ac]
mov rax, qword [rsp + 0x2b0]
mov qword [rsp + 0x200], rax
call fcn.1400349b0
mov ecx, eax
mov rax, qword [rsp + 0x368]
mov dword [rsp + 0x20c], ecx
cmp byte [rax], 0
jne 0x14003925a
mov eax, dword [0x1401d97d0]
mov edx, dword [0x1401d97d4]
mov r8d, 0xd32d0647
xor r8d, 0x2cd2f9b8
mov ecx, eax
xor ecx, r8d
and ecx, edx
xor edx, 0xffffffff
and eax, edx
sub eax, ecx
sub eax, 0xd2a73ce8
mov edx, eax
xor edx, 0xd9fa18b3
mov ecx, 0xbfe1f883
xor ecx, 0x401e077c
xor edx, ecx
and edx, 0xd9fa18b3
mov ecx, 0x8a05a44
xor ecx, 0x8a05a46
imul ecx, edx
sub ecx, 0xd9fa18b3
sub eax, ecx
mov ecx, 0x5227538d
xor edx, edx
div ecx
cmp eax, 0xa1f83585
je 0x1400392a3
mov ecx, dword [rsp + 0x20c]
mov eax, dword [str.Ck]
and eax, dword [0x1401d97dc]
mov r8d, 0xe119836f
xor edx, edx
div r8d
sub eax, 0x25f4beaf
sub eax, 0x368d34d6
add eax, 0x25f4beaf
mov r9d, 0xffffffff
xor r9d, 0xda78bc11
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
mov r9d, 0xf214d1ef
xor r9d, 0xdeb2e10
xor edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0xda78bc11
mov r9d, 0x31134db6
xor r9d, 0xeb6bf1a7
or eax, r9d
imul eax, r8d
add eax, edx
cmp ecx, 0x80
setb cl
mov byte [rsp + 0x1ff], cl
cmp eax, 0xa3d17556
jb 0x1400392a3
mov al, byte [rsp + 0x1ff]
test al, 1
jne 0x140036f5b
jmp 0x140037447
mov rdx, qword [rsp + 0x2d8]
mov rax, rdx
and rax, 1
mov rcx, rdx
or rcx, 1
add rax, rcx
mov qword [rsp + 0x1f0], rax
mov rcx, rdx
or rcx, rcx
xor rcx, 0xffffffffffffffff
movabs r8, 0xcb51211056f6707e
movabs r9, 0x34aedeefa9098f81
xor r8, r9
movabs r9, 0x3941b2d4456f555
movabs r10, 0xfc6be4d2bba90aaa
xor r9, r10
or r8, r9
movabs r9, 0x56b6485967ef4fe5
movabs r10, 0xa949b7a69810b01a
xor r9, r10
xor r8, r9
xor rcx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x98ebe8b16c3d4920
movabs r9, 0x6714174e93c2b6df
xor r8, r9
movabs r9, 0x446259a328858456
movabs r10, 0xbb9da65cd77a7ba9
xor r9, r10
xor r8, r9
and rdx, r8
or rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x140037194
mov r11d, dword [0x1401d97e0]
xor r11d, 0xe078a1df
mov eax, dword [0x1401d97e4]
xor eax, 0x30884da
imul r11d, eax
mov eax, 0xac62cda8
xor eax, 0x539d3257
mov ecx, r11d
xor ecx, eax
mov r8d, 0xafdc24e2
xor r8d, 0x9e21b5da
mov eax, 0xc7191f5b
xor eax, 0x38e6e0a4
xor r8d, eax
mov edx, 0xcb9492f8
xor edx, 0x7a3291db
mov eax, 0xf2a97a55
xor eax, 0xd5685aa
xor edx, eax
mov r9d, 0x71eaf3c1
xor r9d, 0xc04cf0e2
mov eax, ecx
and eax, r9d
and r11d, edx
mov r10d, 0xb00513bf
xor r10d, 0x1a3109c
mov r9d, r8d
and r9d, r10d
mov r10d, 0x21fd127f
xor r10d, 0x10008347
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0xb1a60323
and ecx, edx
or eax, ecx
or eax, 0xf5cec00e
xor eax, 0xf8114d1a
cmp eax, 0x984e1274
ja 0x1400392ac
mov eax, dword [0x1401d97e8]
mov r8d, dword [0x1401d97ec]
mov ecx, 0xc1e2910
xor ecx, 0xf3e1d6ef
mov edx, r8d
xor edx, ecx
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, r8d
add eax, edx
sub eax, ecx
imul eax, eax, 0xd4f6e0fc
or eax, 0x5331fba2
mov r8d, 0xffffffff
xor r8d, 0xa18c28ef
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
mov r8d, 0x91c521d2
xor r8d, 0x6e3ade2d
xor ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0xa18c28ef
or eax, 0xa18c28ef
imul eax, edx
add eax, ecx
mov dword [rsp + 0x1ec], eax
mov eax, 0x14ad6820
xor eax, 0xcebb9033
mov dword [rsp + 0x1e8], eax
call fcn.140007bb8
mov ecx, dword [rsp + 0x1e8]
mov eax, dword [rsp + 0x1ec]
cmp eax, ecx
je 0x1400370eb
jmp 0x14003925a
mov ecx, dword [0x1401d97f0]
mov r8d, dword [0x1401d97f4]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, ecx
and edx, r9d
mov eax, ecx
or eax, r9d
xor eax, 0xffffffff
imul eax, edx
mov edx, ecx
and edx, r8d
or ecx, r8d
imul ecx, edx
add ecx, eax
mov eax, 0xe11815de
xor eax, 0x9caf176b
add ecx, eax
mov eax, ecx
and eax, 0x6041e926
or ecx, 0x6041e926
add eax, ecx
mov ecx, 0xe9729ca0
xor ecx, 0x2698a304
or eax, ecx
mov ecx, 0x402a48a4
xor ecx, 0xd278187
cmp eax, ecx
jbe 0x1400392b5
mov ecx, dword [0x1401d97f8]
mov edx, dword [0x1401d97fc]
mov eax, ecx
xor eax, 0xffffffff
mov r8d, ecx
xor r8d, 0xffffffff
and eax, r8d
mov r8d, edx
or r8d, r8d
xor r8d, 0xffffffff
or eax, r8d
xor eax, 0xffffffff
or ecx, edx
mov edx, 0x6400cc41
xor edx, 0x9bff33be
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0x4f969fd7
xor edx, 0xb0696028
xor ecx, edx
and eax, ecx
mov ecx, 0x330dd0d2
xor edx, edx
div ecx
mov rdx, qword [rsp + 0x1f0]
mov ecx, eax
add ecx, 0xfb786d30
mov eax, ecx
and eax, 0xa6ee8979
or ecx, 0xa6ee8979
add eax, ecx
mov ecx, 0x3744342b
xor ecx, 0xe9a2562d
cmp rdx, 0
setl dl
mov byte [rsp + 0x1e7], dl
cmp eax, ecx
ja 0x140037200
mov al, byte [rsp + 0x1e7]
test al, 1
jne 0x1400372a9
jmp 0x1400372e9
mov rcx, qword [rsp + 0x1f0]
movabs rdx, 0xc8bc0744929cd814
movabs rax, 0xc8bc0744929cd814
xor rdx, rax
movabs r8, 0xf48e7d485b982fc1
movabs rax, 0x8b7182b7a467d03e
xor r8, rax
call fcn.14000c4b0
jmp 0x14003925a
mov eax, dword [0x1401d9800]
mov ecx, dword [0x1401d9804]
xor ecx, 0xb774848c
xor edx, edx
div ecx
and eax, 0x74d9b3cc
or eax, 0x43cd2789
mov ecx, 0xb13880fb
xor edx, edx
div ecx
cmp eax, 0xe7d75d99
je 0x1400392be
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x1f0]
mov eax, dword [0x1401d9808]
mov r10d, dword [0x1401d980c]
mov r8d, eax
not r8d
mov r9d, r10d
and r9d, r8d
mov r11d, r10d
not r11d
mov r8d, eax
and r8d, r11d
imul r8d, r9d
mov r9d, eax
and r9d, r10d
or eax, r10d
imul eax, r9d
add eax, r8d
or eax, 0x6993ac79
add eax, 0xd0bc6747
or eax, 0x5150829d
mov dword [rsp + 0x1d4], eax
mov eax, 0xf2d30e62
mov dword [rsp + 0x1d0], eax
call fcn.140014020
mov r9, qword [rsp + 0x350]
mov r8, qword [rsp + 0x2d8]
mov ecx, dword [rsp + 0x1d0]
mov eax, dword [rsp + 0x1d4]
test r8, r8
setns dl
mov r9, qword [r9]
mov qword [rsp + 0x1d8], r9
sub r8, r9
setl r8b
and dl, r8b
mov byte [rsp + 0x1e6], dl
cmp eax, ecx
ja 0x1400392be
mov al, byte [rsp + 0x1e6]
test al, 1
jne 0x140037407
jmp 0x1400373e9
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x1d8]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov ecx, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x1f0]
mov qword [rsp + 0x1b8], rdx
mov byte [rsp + 0x1c7], cl
mov qword [rsp + 0x1c8], rax
jmp 0x140039215
mov eax, dword [0x1401d9810]
mov r8d, dword [0x1401d9814]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
imul ecx, eax, 0x2d6fe37f
mov eax, 0x4447c256
xor eax, 0x76a2a887
imul ecx, eax
mov edx, ecx
xor edx, 0xffffffff
mov eax, 0x2308ff36
xor eax, 0xe273bbdf
and eax, edx
mov edx, 0x9a0315de
xor edx, 0x5b785137
mov r8d, 0x2db2c873
xor r8d, 0xd24d378c
xor edx, r8d
and ecx, edx
or eax, ecx
cmp eax, 0x20013cdc
ja 0x1400392c7
mov ecx, dword [rsp + 0x20c]
mov esi, dword [0x1401d9818]
xor esi, 0x127d7d71
mov r11d, dword [0x1401d981c]
xor r11d, 0x70d1c640
mov edx, 0xb9769aeb
xor edx, 0x46896514
mov eax, esi
xor eax, edx
mov r9d, r11d
xor r9d, 0xffffffff
mov r8d, 0x96f8ca9b
xor r8d, 0xf072bb5d
mov edx, 0xdd0ed5fb
xor edx, 0x22f12a04
xor r8d, edx
mov edx, eax
and edx, 0x668a71c6
and esi, r8d
mov r10d, r9d
and r10d, 0x668a71c6
and r11d, r8d
or edx, esi
or r10d, r11d
xor edx, r10d
or eax, r9d
xor eax, 0xffffffff
or r8d, 0x668a71c6
and eax, r8d
or edx, eax
mov r8d, edx
xor r8d, 0xffffffff
and r8d, 0x49a6da61
mov r9d, 0xffffffff
xor r9d, 0x49a6da61
mov eax, edx
and eax, r9d
imul eax, r8d
mov r8d, edx
and r8d, 0x49a6da61
or edx, 0x49a6da61
imul edx, r8d
add edx, eax
mov eax, edx
xor eax, 0xffffffff
mov r8d, 0xdaa8f4ed
xor r8d, 0x25570b12
xor edx, r8d
or eax, edx
mov edx, 0x9b899ce2
and edx, 0x9b899ce2
xor edx, 0xffffffff
and eax, edx
xor eax, 0xffffffff
or eax, 0x5b502103
cmp ecx, 0x800
setb cl
mov byte [rsp + 0x1b7], cl
cmp eax, 0x10fefe13
je 0x1400392c7
mov al, byte [rsp + 0x1b7]
test al, 1
jne 0x1400375e2
jmp 0x140037959
mov rdx, qword [rsp + 0x2d8]
movabs rcx, 0xefe2c1e8c2dbee8c
mov rax, rdx
add rax, rcx
movabs rcx, 0xa4980ba5cd5aedd1
movabs r8, 0xa4980ba5cd5aedd3
xor rcx, r8
add rax, rcx
movabs rcx, 0xefe2c1e8c2dbee8c
sub rax, rcx
mov qword [rsp + 0x1a8], rax
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov r8, rdx
xor r8, 0xffffffffffffffff
or rcx, r8
and rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
movabs r8, 0x99d6029b1336bbd4
movabs r9, 0x6629fd64ecc9442b
xor r8, r9
xor rdx, r8
or rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1400377a4
mov ecx, dword [0x1401d9820]
xor ecx, 0x9601fb95
add ecx, dword [0x1401d9824]
mov edx, 0xcede003a
xor edx, 0x3121ffc5
mov eax, ecx
xor eax, edx
and eax, 0x6dd447be
mov edx, 0x87ed3ef9
xor edx, 0xea397947
mov r8d, 0xbf3871a5
xor r8d, 0x40c78e5a
xor edx, r8d
and ecx, edx
sub ecx, eax
mov edx, 0xa93059de
xor edx, 0x3d2c01d3
mov eax, ecx
or eax, edx
mov edx, 0x68ea2a01
xor edx, 0x9715d5fe
xor eax, edx
or ecx, 0x941c580d
mov edx, 0xd529341
xor edx, 0xf2ad6cbe
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
xor ecx, ecx
sub ecx, 0xdea95e06
add eax, ecx
cmp eax, 0xfc549e26
ja 0x1400392d0
mov eax, dword [0x1401d9828]
mov r8d, dword [0x1401d982c]
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, 0x667e3c6c
xor ecx, 0x6e19b10
sub eax, ecx
mov ecx, 0xe6abb749
xor edx, edx
div ecx
mov ecx, 0xffffffff
xor ecx, 0xc2056f73
add eax, ecx
mov ecx, 0x6c601380
xor ecx, 0x6c601381
add eax, ecx
mov dword [rsp + 0x1a4], eax
call fcn.140007bb8
mov eax, dword [rsp + 0x1a4]
cmp eax, 0x4382ba3a
jae 0x14003771e
jmp 0x14003925a
mov rax, qword [rsp + 0x1a8]
cmp rax, 0
jge 0x1400377d6
mov rcx, qword [rsp + 0x1a8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000c4b0
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x1a8]
call fcn.140014020
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x2d8]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x198], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x14003783a
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x198]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r8d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r8d, 6
mov r9b, 0x27
xor r9b, 0xe7
and r9b, r8b
xor r9b, 0xff
add r8b, 0xc0
add r8b, 1
add r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
xor edx, edx
sub rdx, rax
movabs rax, 0x5b7eb242ec183662
movabs r8, 0x5b7eb242ec183662
xor rax, r8
movabs r8, 0x66fdf6f2026fce1a
movabs r9, 0x66fdf6f2026fce1b
xor r8, r9
sub rax, r8
add rdx, rax
xor eax, eax
sub rax, rdx
mov qword [rsp + 0x188], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x190], rcx
cmp rax, rcx
jl 0x140037913
mov rcx, qword [rsp + 0x188]
mov rdx, qword [rsp + 0x190]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov ecx, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x188]
mov rax, qword [rsp + 0x1a8]
and cl, 0x3f
or cl, 0x80
mov qword [rsp + 0x1b8], rdx
mov byte [rsp + 0x1c7], cl
mov qword [rsp + 0x1c8], rax
jmp 0x140039215
mov eax, dword [rsp + 0x20c]
mov ecx, 0x755fe7a5
xor ecx, 0x755ee7a5
cmp eax, ecx
jae 0x140037e4b
mov rdx, qword [rsp + 0x2d8]
movabs rax, 0x366e2ff36d962365
mov rcx, rdx
sub rcx, rax
add rcx, 3
movabs rax, 0x366e2ff36d962365
add rcx, rax
mov qword [rsp + 0x180], rcx
xor rdx, 0xffffffffffffffff
movabs rax, 0xfd9c4037326a6065
movabs r8, 0x263bfc8cd959f9a
xor rax, r8
xor rdx, rax
mov rax, rcx
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x1400379df
call fcn.140007bb8
jmp 0x14003925a
mov rax, qword [rsp + 0x180]
cmp rax, 0
jge 0x140037a31
mov rcx, qword [rsp + 0x180]
movabs rdx, 0x50173dd55919209b
movabs rax, 0x50173dd55919209b
xor rdx, rax
movabs r8, 0xac603ea94d7212f5
movabs rax, 0xd39fc156b28ded0a
xor r8, rax
call fcn.14000c4b0
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x180]
call fcn.140014020
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x2d8]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x178], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140037a9f
mov rcx, qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x178]
mov rdx, rax
and rdx, 0xffffffffffffffff
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r8d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r8d, 0xc
mov dil, r8b
mov r9b, dil
xor r9b, 0xff
mov r11b, 0xff
xor r11b, 0xe0
mov r10b, 0xaa
xor r10b, 0xbf
mov r8b, 0x64
xor r8b, 0x9b
xor r10b, r8b
mov r8b, r9b
and r8b, 0x15
and dil, r10b
mov sil, 0xae
xor sil, 0xbb
mov bl, r11b
and bl, sil
mov sil, r10b
and sil, 0xe0
or r8b, dil
or bl, sil
xor r8b, bl
or r9b, r11b
xor r9b, 0xff
or r10b, 0x15
and r9b, r10b
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
movabs rdx, 0x8de347fbd5b6d4ec
movabs r8, 0x8de347fbd5b6d4ed
xor rdx, r8
add rax, rdx
mov qword [rsp + 0x168], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x170], rcx
cmp rax, rcx
jl 0x140037d1e
mov eax, dword [0x1401d9830]
xor edx, edx
div dword [0x1401d9834]
mov ecx, eax
xor ecx, 0xf39c79a7
xor ecx, 0xffffffff
mov edx, 0xee88f6d
xor edx, 0xfd74f6ca
or eax, edx
and eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x35ba92e8
mov edx, 0xffffffff
xor edx, 0x35ba92e8
and eax, edx
sub eax, ecx
mov ecx, 0xbbf50dd4
xor ecx, 0xbbf50dd4
mov edx, 0x2ac51508
xor edx, 0xec3617cc
sub ecx, edx
sub eax, ecx
cmp eax, 0x840db1bc
je 0x1400392d9
mov rcx, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x170]
mov eax, dword [0x1401d9838]
mov r10d, dword [0x1401d983c]
xor r10d, 0xef412890
mov r8d, eax
xor r8d, 0xffffffff
mov r9d, r10d
and r9d, r8d
mov r8d, 0x64e65ba1
xor r8d, 0x9b19a45e
mov r11d, r10d
xor r11d, r8d
mov r8d, eax
and r8d, r11d
imul r8d, r9d
mov r9d, eax
and r9d, r10d
or eax, r10d
imul eax, r9d
add eax, r8d
mov r8d, 0x3a3c1744
xor r8d, 0xc5c3e8bb
mov r9d, eax
xor r9d, r8d
and r9d, 0x5b76bec5
mov r10d, 0xffffffff
xor r10d, 0x5b76bec5
mov r8d, eax
and r8d, r10d
imul r8d, r9d
mov r9d, eax
and r9d, 0x5b76bec5
or eax, 0x5b76bec5
imul eax, r9d
add eax, r8d
mov r8d, eax
add r8d, 1
mov r9d, 0xfcab1438
xor r9d, 0x354ebc7
xor eax, r9d
or eax, 0xf80b3663
add eax, r8d
mov r9d, 0x3dfd6531
xor r9d, 0xc2029ace
mov r8d, eax
xor r8d, r9d
and r8d, 0xa32fc4d1
mov r9d, 0x3a69d238
xor r9d, 0x994616e9
mov r10d, 0xe7b481f8
xor r10d, 0x184b7e07
xor r9d, r10d
and eax, r9d
sub eax, r8d
mov dword [rsp + 0x164], eax
movabs rax, 0xc355428fe145f263
movabs r8, 0x51ba48a37408784c
xor rax, r8
add rdx, rax
add rdx, 0xffffffffffffffff
movabs rax, 0x92ef0a2c954d8a2f
sub rdx, rax
call fcn.140012270
mov eax, dword [rsp + 0x164]
cmp eax, 0x63cf95c0
ja 0x140037bcf
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0x168]
mov rax, qword [rsp + 0x2d8]
mov ecx, 0xc74947fa
xor ecx, 0xc74947fc
shr r9d, cl
mov rcx, qword [rsp + 0x350]
xor r9b, 0xff
mov r10b, 0xff
xor r10b, 0x3f
mov r11b, 0xd5
xor r11b, 0x98
mov bl, 0xb8
xor bl, 0x47
xor r11b, bl
or r9b, r10b
mov r10b, 0xc1
xor r10b, 0x8c
or r10b, r11b
xor r9b, 0xff
and r9b, r10b
or r9b, 0x80
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xac0845c15deb1660
movabs r8, 0xe6c7d655247cf27a
xor rdx, r8
add rax, rdx
add rax, 2
movabs rdx, 0x4acf93947997e41a
sub rax, rdx
mov qword [rsp + 0x150], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x158], rcx
cmp rax, rcx
jl 0x140037e05
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x158]
xor eax, eax
sub rax, 0xffffffffffffffff
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov ecx, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x150]
mov rax, qword [rsp + 0x180]
and cl, 0x3f
or cl, 0x80
mov qword [rsp + 0x1b8], rdx
mov byte [rsp + 0x1c7], cl
mov qword [rsp + 0x1c8], rax
jmp 0x140039215
mov eax, dword [rsp + 0x20c]
cmp eax, 0x200000
jae 0x140038368
mov rdx, qword [rsp + 0x2d8]
mov rax, rdx
add rax, 4
mov qword [rsp + 0x148], rax
mov rcx, rdx
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
or rcx, rdx
xor rax, 0xffffffffffffffff
movabs rdx, 0x468e51cb7db34695
movabs r8, 0xb971ae34824cb96a
xor rdx, r8
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0xb172f02fc10c3b15
xor rdx, r8
or rax, rcx
movabs rcx, 0xc130bdf9c0bd2573
movabs r8, 0x70424dd601b11e66
xor rcx, r8
or rcx, rdx
movabs rdx, 0x5684cfcc1d4a718e
movabs r8, 0xa97b3033e2b58e71
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jge 0x140037f10
call fcn.140007bb8
jmp 0x14003925a
mov rax, qword [rsp + 0x148]
cmp rax, 0
jge 0x140037f42
mov rcx, qword [rsp + 0x148]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000c4b0
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x148]
call fcn.140014020
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x2d8]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x140], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140037fc6
mov rcx, qword [rsp + 0x2d8]
mov rax, qword [rsp + 0x140]
movabs r8, 0xb7881d119f13562e
movabs rdx, 0x4877e2ee60eca9d1
xor r8, rdx
mov rdx, rax
and rdx, r8
or rax, 0xffffffffffffffff
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov ecx, dword [0x1401d9840]
mov eax, 0xa695be0a
xor eax, 0xc9664a5e
xor ecx, eax
add ecx, dword [0x1401d9844]
mov eax, 0xffffffff
xor eax, 0xf223e87d
xor edx, edx
sub edx, 1
sub eax, edx
sub ecx, eax
mov edx, 0x8419e2bf
xor edx, 0x7be61d40
mov eax, ecx
xor eax, edx
mov edx, 0xffffffff
xor edx, 0x29e07416
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x29e07416
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
and eax, 0x5b822f82
cmp eax, 0xda3eef3f
ja 0x1400392e2
mov rcx, qword [rsp + 0x350]
mov edx, dword [0x1401d9848]
mov eax, 0x627b518a
xor eax, 0xf6d992e0
xor edx, eax
mov r8d, dword [0x1401d984c]
xor r8d, 0x1b6f9c1a
mov eax, edx
add eax, 1
xor edx, 0xffffffff
or edx, r8d
add edx, eax
mov eax, 0xd7571e73
xor eax, 0x35c8fec9
add edx, eax
mov r9d, 0x381c1612
xor r9d, 0xbe0ba073
mov eax, 0xf203a9b
xor eax, 0xf0dfc564
xor r9d, eax
mov r8d, edx
and r8d, r9d
mov eax, edx
or eax, r9d
xor eax, 0xffffffff
imul eax, r8d
mov r8d, edx
and r8d, 0x8617b661
mov r9d, 0xd57afabb
xor r9d, 0x536d4cda
or edx, r9d
imul edx, r8d
add edx, eax
mov eax, edx
and eax, 0x89028163
xor edx, 0x89028163
or eax, edx
mov dword [rsp + 0x124], eax
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov r8, qword [rsp + 0x330]
mov rdx, qword [rsp + 0x350]
mov eax, dword [rsp + 0x124]
mov ecx, 0xfec968c4
xor ecx, 0xfec968d6
shr r9d, cl
mov rcx, qword [rsp + 0x2d8]
or r9b, 0xf0
mov r8, qword [r8]
mov byte [r8 + rcx + 8], r9b
add rcx, 1
mov qword [rsp + 0x128], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x130], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x13f], cl
cmp eax, 0xb473d8d7
jae 0x140038035
mov al, byte [rsp + 0x13f]
test al, 1
jne 0x14003818e
jmp 0x140038161
mov rcx, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x130]
xor eax, eax
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rax, qword [rsp + 0x330]
mov r8, qword [rsp + 0x128]
mov rdx, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r9d, 0xc
and r9b, 0x3f
mov r10b, r9b
and r10b, 0x80
mov r11b, 0xea
xor r11b, 0x15
xor r10b, r11b
add r9b, 0x80
add r9b, 1
add r9b, r10b
mov rax, qword [rax]
mov byte [rax + r8 + 8], r9b
mov rax, rdx
and rax, 2
movabs r8, 0x222105ef1dcb49c0
movabs r9, 0x222105ef1dcb49c2
xor r8, r9
or rdx, r8
add rax, rdx
mov qword [rsp + 0x110], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x118], rcx
cmp rax, rcx
jl 0x14003824d
mov rcx, qword [rsp + 0x110]
mov rdx, qword [rsp + 0x118]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0x110]
mov rax, qword [rsp + 0x2d8]
mov ecx, 0x8e8ca321
xor ecx, 0x8e8ca327
shr r9d, cl
mov rcx, qword [rsp + 0x350]
mov r10b, r9b
and r10b, 0x3f
mov r9b, r10b
and r9b, 0x80
xor r10b, 0x80
or r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
add rax, 3
mov qword [rsp + 0x100], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x108], rcx
cmp rax, rcx
jl 0x140038301
mov rcx, qword [rsp + 0x100]
mov rdx, qword [rsp + 0x108]
movabs rax, 0x5d24db5afcb4ce51
movabs r8, 0xa2db24a5034b31ae
xor rax, r8
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov ecx, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x100]
mov rax, qword [rsp + 0x148]
mov r9b, 0x20
xor r9b, 0x21
mov r8b, cl
add r8b, r9b
xor cl, 0xff
mov r9b, 0x49
xor r9b, 0x76
or cl, r9b
add cl, r8b
mov r8b, 0xa6
xor r8b, 0x26
or cl, r8b
mov qword [rsp + 0x1b8], rdx
mov byte [rsp + 0x1c7], cl
mov qword [rsp + 0x1c8], rax
jmp 0x140039215
mov eax, dword [rsp + 0x20c]
mov ecx, 0x59ac0661
xor ecx, 0x5dac0661
cmp eax, ecx
jae 0x140038a9e
mov rcx, qword [rsp + 0x2d8]
mov rax, rcx
add rax, 5
mov qword [rsp + 0xf8], rax
movabs r8, 0x75d1455ffdcb9707
movabs rdx, 0x8a2ebaa0023468f8
xor r8, rdx
mov rdx, rcx
xor rdx, r8
mov r8, rcx
xor r8, 0xffffffffffffffff
and rdx, r8
mov r8, 0xffffffffffffffff
or r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rdx, r8
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
and rcx, r8
or rdx, rcx
movabs rcx, 0x47954485ddc9d9ed
movabs r8, 0xb86abb7a22362612
xor rcx, r8
xor rdx, rcx
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
or rax, rdx
add rax, rcx
movabs rcx, 0x61f24f52061934fb
movabs rdx, 0x61f24f52061934fb
xor rcx, rdx
cmp rax, rcx
jge 0x140038444
call fcn.140007bb8
jmp 0x14003925a
mov eax, dword [0x1401d9850]
mov ecx, dword [0x1401d9854]
xor ecx, 0xacbb205f
xor edx, edx
div ecx
mov ecx, 0xd6c32b58
xor edx, edx
div ecx
mov ecx, eax
or ecx, 0xf535feee
mov edx, 0x4850eb75
xor edx, 0xdd67b87e
mov eax, ecx
and eax, edx
or ecx, 0x9537530b
add eax, ecx
cmp eax, 0xf9b6086a
je 0x1400392eb
mov rcx, qword [rsp + 0xf8]
mov eax, dword [0x1401d9858]
xor eax, 0x3c1da2dd
mov r8d, dword [0x1401d985c]
xor r8d, 0xf58f7eec
xor edx, edx
div r8d
mov edx, eax
mov eax, 0x62a26020
xor eax, 0x9d5d9fdf
mov r8d, edx
xor r8d, eax
and r8d, 0xa488fe31
mov r9d, 0xffffffff
xor r9d, 0xa488fe31
mov eax, edx
and eax, r9d
imul eax, r8d
mov r8d, edx
and r8d, 0xa488fe31
or edx, 0xa488fe31
imul edx, r8d
add edx, eax
mov eax, edx
and eax, 0xda469fb8
or edx, 0xda469fb8
add eax, edx
mov edx, eax
xor edx, 0x852615a9
xor edx, 0xffffffff
or eax, 0x852615a9
and eax, edx
cmp rcx, 0
setl cl
mov byte [rsp + 0xf7], cl
cmp eax, 0x125ce2e5
je 0x14003848d
mov al, byte [rsp + 0xf7]
test al, 1
jne 0x140038546
jmp 0x140038566
mov rcx, qword [rsp + 0xf8]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000c4b0
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0xf8]
call fcn.140014020
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x2d8]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0xe8], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x1400385ee
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0xe8]
movabs rax, 0x33391c61084e6a1b
movabs r8, 0x33391c61084e6a1b
xor rax, r8
sub rax, rdx
xor edx, edx
sub rdx, 0xffffffffffffffff
add rax, rdx
xor edx, edx
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r8d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r8d, 0x18
mov r9b, r8b
mov r8b, r9b
and r8b, 0xf8
xor r9b, 0xf8
or r8b, r9b
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
movabs rdx, 0xe8a1dda16967ea6f
movabs r8, 0xe8a1dda16967ea6f
xor rdx, r8
movabs r8, 0xeb650c12d809a4e5
movabs r9, 0xeb650c12d809a4e4
xor r8, r9
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0xd8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xe0], rcx
cmp rax, rcx
jl 0x1400386d6
mov rcx, qword [rsp + 0xd8]
mov rdx, qword [rsp + 0xe0]
movabs rax, 0x3f04aea532b973d7
add rdx, rax
movabs rax, 0x2afcdd5c95ce3004
movabs r8, 0xd50322a36a31cffb
xor rax, r8
add rdx, rax
movabs rax, 0x3f04aea532b973d7
sub rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0xd8]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r9d, 0x12
mov r10b, r9b
add r10b, 1
xor r9b, 0xff
or r9b, 0x3f
add r9b, r10b
and r9b, r9b
xor r9b, 0xff
mov r10b, pe_nt_image_headers64
and r10b, 0x80
mov r11b, 0x26
xor r11b, 0xd9
xor r10b, r11b
and r9b, r10b
xor r9b, 0xff
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0x6e8c8eed84bf5a82
add rax, rdx
add rax, 2
movabs rdx, 0xc2d21e95ba879824
movabs r8, 0xac5e90783e38c2a6
xor rdx, r8
sub rax, rdx
mov qword [rsp + 0xc8], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xd0], rcx
cmp rax, rcx
jl 0x1400387c3
mov rcx, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0xd0]
movabs rax, 0xd58ffeac445c1961
movabs r8, 0x2a700153bba3e69e
xor rax, r8
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov eax, dword [0x1401d9860]
mov r8d, dword [str._VgZ]
xor r8d, 0xc9e23568
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0xc8788c9d
xor ecx, 0x8f34cdac
xor edx, edx
div ecx
or eax, eax
mov ecx, 0xd447dfcb
xor ecx, 0x2bb82034
xor eax, ecx
mov ecx, 0x1240fc5b
or ecx, 0x1240fc5b
mov edx, 0x5ab4a9e9
xor edx, 0xa54b5616
xor ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xa1f1b66f
xor edx, edx
div ecx
cmp eax, 0x5a8f7ef1
ja 0x1400392f4
mov rcx, qword [rsp + 0x350]
mov edx, dword [0x1401d9868]
mov eax, dword [0x1401d986c]
xor eax, 0x3e40263
and edx, eax
mov eax, edx
xor eax, 0xffffffff
and eax, 0x9ecb97d3
mov r8d, 0xffffffff
xor r8d, 0x9ecb97d3
and edx, r8d
or eax, edx
sub eax, 0x34ba017
sub eax, 0xae0fbe57
mov dword [rsp + 0xa8], eax
mov eax, 0xca693734
xor eax, 0x3fe5768
mov dword [rsp + 0xac], eax
call fcn.14003930f
mov r11d, dword [rsp + 0x20c]
mov r9, qword [rsp + 0x330]
mov r10, qword [rsp + 0xc8]
mov rdx, qword [rsp + 0x2d8]
mov r8, qword [rsp + 0x350]
mov eax, dword [rsp + 0xa8]
mov ecx, 0x59cb958d
xor ecx, 0x59cb9581
shr r11d, cl
mov ecx, dword [rsp + 0xac]
mov bl, r11b
mov sil, 0xca
xor sil, 0xf5
mov r11b, 0xf5
xor r11b, 0xa
xor sil, r11b
mov r11b, bl
xor r11b, sil
and r11b, bl
mov bl, 0xe2
xor bl, 0x62
or r11b, bl
mov r9, qword [r9]
mov byte [r9 + r10 + 8], r11b
add rdx, 3
mov qword [rsp + 0xb0], rdx
mov r8, qword [r8]
mov qword [rsp + 0xb8], r8
cmp rdx, r8
setl dl
mov byte [rsp + 0xc7], dl
cmp eax, ecx
ja 0x1400392f4
mov al, byte [rsp + 0xc7]
test al, 1
jne 0x140038977
jmp 0x140038959
mov rcx, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xb8]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0xb0]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r9d, 6
or r9b, r9b
mov r10b, 0x7f
xor r10b, 0x80
xor r9b, r10b
mov r10b, 0x3f
or r10b, 0x3f
xor r10b, 0xff
xor r9b, 0xff
xor r10b, 0xff
and r9b, r10b
or r9b, 0x80
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
mov rdx, 0xffffffffffffffff
xor rdx, 4
xor r8d, r8d
sub r8, 1
sub rdx, r8
sub rax, rdx
mov qword [rsp + 0x98], rax
mov rcx, qword [rcx]
mov qword [rsp + 0xa0], rcx
cmp rax, rcx
jl 0x140038a31
mov rcx, qword [rsp + 0x98]
mov rdx, qword [rsp + 0xa0]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov ecx, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x98]
mov rax, qword [rsp + 0xf8]
mov r8b, cl
xor r8b, 0xff
mov r9b, 0xff
xor r9b, 0x3f
mov cl, 0xff
xor cl, 0xf8
or r8b, r9b
or cl, 0xf8
xor r8b, 0xff
and r8b, cl
mov cl, r8b
and cl, 0x80
xor r8b, 0x80
or cl, r8b
mov qword [rsp + 0x1b8], rdx
mov byte [rsp + 0x1c7], cl
mov qword [rsp + 0x1c8], rax
jmp 0x140039215
mov eax, dword [0x1401d9870]
xor eax, 0xa9c387c
mov ecx, dword [0x1401d9874]
xor ecx, 0x6f963e65
mov edx, 0x3d714571
xor edx, 0xdd146f69
sub eax, edx
add eax, ecx
add eax, 0xe0652a18
mov ecx, 0xb31b4a96
xor edx, edx
div ecx
mov ecx, 0x8d3a5e3e
xor edx, edx
div ecx
xor eax, 0xf67b1d57
cmp eax, 0xaa6d32fb
je 0x1400392fd
mov edx, dword [rsp + 0x20c]
mov eax, dword [0x1401d9878]
imul eax, dword [0x1401d987c]
mov ecx, eax
or ecx, ecx
xor ecx, 0xffffffff
mov r8d, 0x2ca1e44a
xor r8d, 0xfbfae884
mov r9d, 0x516198dc
xor r9d, 0x863a9412
or r8d, r9d
xor r8d, 0xffffffff
or ecx, r8d
mov r8d, 0xb0dee2e4
xor r8d, 0x4f211d1b
xor ecx, r8d
or eax, 0xd75b0cce
xor eax, 0xffffffff
xor ecx, 0xffffffff
xor eax, 0xffffffff
and ecx, eax
mov r8d, 0x660251e8
xor r8d, 0x99fdae17
mov eax, ecx
xor eax, r8d
mov r8d, 0xc8744203
xor r8d, 0x378bbdfc
xor ecx, r8d
and eax, ecx
mov ecx, 0xc8edc646
or ecx, 0xc8edc646
xor ecx, 0xffffffff
or eax, ecx
mov ecx, 0x3c0519d9
xor ecx, 0xc3fae626
xor eax, ecx
xor eax, 0x31a7e817
mov ecx, 0xeb5f3b79
xor ecx, 0x4059f22f
cmp edx, 0xffffffff
setg dl
mov byte [rsp + 0x97], dl
cmp eax, ecx
je 0x140038aeb
mov rax, qword [rsp + 0x200]
mov cl, byte [rsp + 0x97]
test cl, 1
mov qword [rsp + 0x2c8], rax
jne 0x140038bd5
jmp 0x140035b09
mov rdx, qword [rsp + 0x2d8]
movabs rcx, 0x4e872cf927c2a214
mov rax, rdx
add rax, rcx
add rax, 6
movabs rcx, 0xe4d8cf18c7efee75
movabs r8, 0xaa5fe3e1e02d4c61
xor rcx, r8
sub rax, rcx
mov qword [rsp + 0x88], rax
movabs r8, 0x719cbbd5252f5db5
movabs rcx, 0x8e63442adad0a24a
xor r8, rcx
mov rcx, rdx
xor rcx, r8
mov r8, rdx
xor r8, 0xffffffffffffffff
or rcx, r8
and rcx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
mov r8, 0xffffffffffffffff
xor r8, 0xffffffffffffffff
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
or r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
and rcx, rdx
xor rcx, 0xffffffffffffffff
and rax, rcx
cmp rax, 0
jge 0x140038c80
call fcn.140007bb8
jmp 0x14003925a
mov rax, qword [rsp + 0x88]
cmp rax, 0
jge 0x140038cd2
mov rcx, qword [rsp + 0x88]
movabs rdx, 0x4f253a52edd3e23d
movabs rax, 0x4f253a52edd3e23d
xor rdx, rax
movabs r8, 0x242b384bbdbb8bb
movabs rax, 0x7dbd4c7b44244744
xor r8, rax
call fcn.14000c4b0
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
mov rdx, qword [rsp + 0x88]
call fcn.140014020
mov rdx, qword [rsp + 0x350]
mov rcx, qword [rsp + 0x2d8]
test rcx, rcx
setns al
mov rdx, qword [rdx]
mov qword [rsp + 0x80], rdx
sub rcx, rdx
setl cl
and al, cl
test al, 1
jne 0x140038d4c
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x80]
movabs rax, 0xa4d59b01d32e1943
movabs r8, 0x5b2a64fe2cd1e6bc
xor rax, r8
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r8d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r8d, 0x1e
or r8b, 0xfc
mov rdx, qword [rdx]
mov byte [rdx + rax + 8], r8b
add rax, 1
mov qword [rsp + 0x70], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x78], rcx
cmp rax, rcx
jl 0x140038dbb
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x78]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0x70]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r9d, 0x18
mov r10b, r9b
and r10b, 0x3f
mov r9b, r10b
and r9b, 0x80
mov r11b, 0xea
xor r11b, 0x6a
xor r10b, r11b
or r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0x71c6dc21d196321a
movabs r8, 0x42a0c53ce35ee461
xor rdx, r8
add rax, rdx
movabs rdx, 0xe5e46f9defa98d9e
movabs r8, 0xe5e46f9defa98d9c
xor rdx, r8
add rax, rdx
movabs rdx, 0x3366191d32c8d67b
sub rax, rdx
mov qword [rsp + 0x60], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x68], rcx
cmp rax, rcx
jl 0x140038e83
mov rcx, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0x60]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r9d, 0x12
mov r10b, r9b
mov r11b, 0xff
xor r11b, 0x3f
mov r9b, r10b
xor r9b, r11b
and r9b, r10b
mov r10b, r9b
and r10b, 0x80
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 + 0x50], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x58], rcx
cmp rax, rcx
jl 0x140038f1c
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
add rdx, 0xffffffffffffffff
call fcn.140012270
jmp 0x14003925a
mov ecx, dword [0x1401d9880]
mov edx, dword [0x1401d9884]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
xor eax, 0x755452f
add eax, 0xdaa15301
or eax, 0x376f0e49
cmp eax, 0xbed68cd0
jb 0x140039306
mov rcx, qword [rsp + 0x350]
mov eax, dword [0x1401d9888]
mov edx, dword [0x1401d988c]
mov r8d, 0xf112b312
xor r8d, 0x16591d45
xor edx, r8d
sub eax, 0x80e2e900
sub eax, edx
add eax, 0x80e2e900
and eax, 0xd0bbe9bc
or eax, 0xfafd063f
xor eax, 0x5b3711ea
mov dword [rsp + 0x34], eax
call fcn.14003930f
mov r10d, dword [rsp + 0x20c]
mov r8, qword [rsp + 0x330]
mov r9, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x2d8]
mov rdx, qword [rsp + 0x350]
mov eax, dword [rsp + 0x34]
shr r10d, 0xc
mov r11b, r10b
add r11b, 1
mov bl, 3
xor bl, 0xfc
xor r10b, bl
or r10b, 0x3f
add r10b, r11b
mov r11b, 0x99
xor r11b, 0x19
or r10b, r11b
mov r8, qword [r8]
mov byte [r8 + r9 + 8], r10b
movabs r8, 0x8e4ccfc6465a6c2b
movabs r9, 0x8e4ccfc6465a6c2f
xor r8, r9
add rcx, r8
mov qword [rsp + 0x38], rcx
mov rdx, qword [rdx]
mov qword [rsp + 0x40], rdx
cmp rcx, rdx
setl cl
mov byte [rsp + 0x4f], cl
cmp eax, 0xc8e0a7d3
je 0x140038f55
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x140039065
jmp 0x14003903f
mov rcx, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x40]
mov rax, rdx
and rax, 0xffffffffffffffff
shl rax, 1
xor rdx, 0xffffffffffffffff
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov r9d, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0x38]
mov rax, qword [rsp + 0x2d8]
mov rcx, qword [rsp + 0x350]
shr r9d, 6
mov r10b, r9b
xor r10b, 0xff
mov r11b, 0xf
xor r11b, 0x30
mov bl, 0x69
xor bl, 0x96
xor r11b, bl
or r10b, r11b
and r9b, 0x3f
xor r9b, 0xff
xor r10b, 0xff
xor r9b, 0xff
or r10b, r9b
mov r9b, r10b
and r9b, 0x80
mov r11b, 0x8e
xor r11b, 0xe
xor r10b, r11b
or r9b, r10b
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
movabs rdx, 0xfb91ea4bab73c5db
add rax, rdx
add rax, 5
movabs rdx, 0xfb91ea4bab73c5db
sub rax, rdx
mov qword [rsp + 0x20], rax
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
cmp rax, rcx
jl 0x14003916c
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
movabs rax, 0x104403057822eb8d
movabs r8, 0x8cdae062c7b2c50b
xor rax, r8
sub rdx, rax
movabs rax, 0x81068e3546d428b
movabs r8, 0xf7ef971cab92bd74
xor rax, r8
add rdx, rax
movabs rax, 0x9c9ee367bf902e86
add rdx, rax
call fcn.140012270
jmp 0x14003925a
mov rcx, qword [rsp + 0x350]
call fcn.14003930f
mov ecx, dword [rsp + 0x20c]
mov rdx, qword [rsp + 0x20]
mov rax, qword [rsp + 0x88]
mov sil, cl
mov cl, sil
xor cl, 0x3f
xor cl, 0xff
or sil, 0x3f
and sil, cl
mov r8b, sil
xor r8b, 0xff
mov r10b, 0xff
xor r10b, 0x80
mov r9b, 0x6f
xor r9b, 0x21
mov cl, 0xd2
xor cl, 0x2d
xor r9b, cl
mov r11b, 0xfa
xor r11b, 0xb4
mov cl, r8b
and cl, r11b
and sil, r9b
mov bl, 0x5d
xor bl, 0x13
mov r11b, r10b
and r11b, bl
mov bl, r9b
and bl, 0x80
or cl, sil
or r11b, bl
xor cl, r11b
or r8b, r10b
mov r10b, 0x11
xor r10b, 0xee
xor r8b, r10b
or r9b, 0x4e
and r8b, r9b
or cl, r8b
mov qword [rsp + 0x1b8], rdx
mov byte [rsp + 0x1c7], cl
mov qword [rsp + 0x1c8], rax
mov rax, qword [rsp + 0x200]
mov rdx, qword [rsp + 0x330]
mov r8, qword [rsp + 0x1b8]
mov r9b, byte [rsp + 0x1c7]
mov rcx, qword [rsp + 0x1c8]
mov rdx, qword [rdx]
mov byte [rdx + r8 + 8], r9b
mov qword [rsp + 0x338], rcx
mov qword [rsp + 0x340], rax
jmp 0x140035a51
mov rax, qword [rsp + 0x358]
add rsp, 0x380
pop rbx
pop rdi
pop rsi
ret
pop rbx
mov edx, 0x43e983cb
enter 0xffffffffffffffff, 0x1f
invalid
invalid
test byte [rdi], al
mov al, 0xe9
push rbx
retf 0xffff
xor byte [rdi - 0xf166a86], ch
invalid
sahf
or byte [r15 - 0x2fa917], bl
push qword [0x12935dd8c]
xor eax, 0xe9324aed
push rsi
invalid
out dx, eax
test ecx, ecx
push rbp
jmp 0x140036eb3
invalid
mov byte [rbp - 0x5b], dh
invalid
ret
invalid
pop rdi
retf 0x4b12
push rbp
cmp byte [rdx - 0x76], bl
jmp 0x140037bcf
push rbp
cmpsb byte [rsi], byte [rdi]
bts ecx, 0x4a
in eax, dx
invalid
int3
mov gs, word [rbx]
notrack jmp 0x14003884a
pop rdi
in al, 0x7e
jmp 0x140038aeb
push rbx
outsd dx, dword [rsi]
pop rsp
jmp 0x140038f55