Function at 0x14036bec0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x3d8
mov qword [rsp + 0x30], rdx
mov rax, qword [0x140682ee8]
xor rax, rsp
mov qword [rsp + 0x3d0], rax
cmp r9, 0x20
jbe 0x14036bf30
xor eax, eax
test al, al
nop word cs:[rax + rax]
mov eax, dword [0x140695fa4]
cmp eax, 0x23
jg 0x14036bf00
mov rcx, qword [rsp + 0x3d0]
xor rcx, rsp
call fcn.1404e9d20
nop
add rsp, 0x3d8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rbp, r9
mov r12, rcx
mov ecx, dword [0x14064d748]
movabs rax, 0xb26545ca246ea83c
sub ecx, eax
add cl, 0x83
mov rsi, r8
mov r13, r9
shl r13, cl
xor r14d, r14d
lea rcx, [rsp + 0x350]
xor edx, edx
mov r8, r13
call fcn.140512320
mov dword [rsp + 0x350], 1
mov rdi, qword [rsp + 0x30]
mov rcx, rdi
xor edx, edx
mov r8, r13
call fcn.140512320
mov dword [rdi], 0
lea rcx, [rsp + 0x2d0]
mov rdx, r12
mov r8, r13
call fcn.140511c70
lea rcx, [rsp + 0x250]
mov qword [rsp + 0x48], rsi
mov rdx, rsi
mov r8, r13
call fcn.140511c70
test ebp, ebp
je 0x14036cc72
movabs rax, 0x970ef2cd58dd7345
mov r9, rbp
and r9, 0xfffffffffffffff8
mov r10, rbp
not r10
mov ecx, r10d
and ecx, 7
lea rdx, [rcx + r9]
mov r11, r10
and r11, 0xfffffffffffffff8
mov r8, rdx
not r8
xor rdx, r11
not r11
and r11, r8
or r11, rdx
not r11
or r11, rdx
not r11
mov qword [rsp + 0x90], r11
mov rdx, rbp
xor rdx, 1
and r10, 0xfffffffffffffffe
or r10, rdx
not r10
mov qword [rsp + 0xb8], r10
mov rdx, rbp
and rdx, 0xfffffffffffffffe
mov qword [rsp + 0xc0], rdx
mov r10, rbp
xor r10, 0xfffffffffffffff8
or r10, rcx
not r10
mov rdx, qword [0x14064d748]
lea ecx, [rax + rdx]
add cl, 2
mov r8, r10
shl r8, cl
lea rcx, [rsp + r8]
add rcx, 0x350
mov qword [rsp + 0x80], rcx
add rax, rdx
add rax, 0x18
mov qword [rsp + 0x50], rax
mov eax, ebp
and eax, 7
mov qword [rsp + 0x78], rax
lea r8d, [rbp - 1]
lea rcx, [rsp + r8*4]
add rcx, 0x2d0
lea rax, [rbp*8]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + r9*4 + 0x250]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x98], r9
lea rax, [rsp + r9*4 + 0x2d0]
mov qword [rsp + 0x68], rax
mov rax, qword [rsp + 0x30]
mov qword [rsp + 0x88], r10
lea rdx, [rax + r10*4]
mov qword [rsp + 0x60], rdx
add rax, 8
mov qword [rsp + 0x58], rax
lea r12, [fcn.14036bec0]
mov r13d, 0x7900e2ba
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0xb0], r8
mov qword [rsp + 0xc8], rbp
jmp 0x14036c128
mov rcx, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xb0]
test ebp, ebp
je 0x14036cc72
mov r9d, dword [rcx]
nop dword [rax + rax]
lea eax, [r12 + r12]
add eax, 0x3d60
mov edx, eax
not edx
and edx, eax
mov eax, dword [0x14064d750]
add eax, r13d
cmp edx, eax
jne 0x14036c130
mov r10, qword [0x14064c478]
nop word cs:[rax + rax]
cmp dword [0x14064d750], 0x86ff1d46
jne 0x14036c1a5
mov edx, dword [0x140695fa0]
lea eax, [rdx - 1]
imul eax, edx
mov edx, dword [0x14064d750]
mov r11d, edx
xor r11d, 0x7900e2bc
and edx, 0x7900e2bc
add edx, edx
mov esi, r11d
xor esi, edx
and edx, r11d
lea r11d, [rsi + rdx*2]
xor edx, edx
div r11d
test edx, edx
je 0x14036c1c0
mov eax, dword [0x140695fa0]
mov edx, dword [0x14064d750]
not edx
add edx, eax
imul edx, eax
test dl, 1
jne 0x14036c160
jmp 0x14036c16c
movsxd rsi, dword [r10]
movabs rax, 0x414554a8b36d754b
add rsi, rax
add rsi, r10
sub rsi, rax
jmp 0x14036c1f1
mov eax, dword [0x140695fa0]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
je 0x14036c1f6
test r14b, r14b
jne 0x14036c210
mov r15d, dword [0x1405484fc]
test r14b, r14b
je 0x14036c250
nop word cs:[rax + rax]
lea eax, [r12 + r12]
add eax, 0x2f80
mov edx, eax
not edx
test edx, eax
jne 0x14036c23c
mov eax, dword [0x1405484fc]
mov eax, dword [0x140695fa0]
mov edx, eax
not edx
add edx, 2
imul edx, eax
test dl, 1
je 0x14036c1e0
mov eax, dword [0x1405484fc]
jmp 0x14036c221
test r9d, r9d
je 0x14036c4a5
mov qword [rsp + 0x20], 0
lea rcx, [rsp + 0x1d0]
lea rbx, [rsp + 0x250]
mov rdx, rbx
lea rdi, [rsp + 0x2d0]
mov r8, rdi
mov r9, rbp
call fcn.140366830
mov rdx, rbp
cmp rbp, 8
jb 0x14036c500
movaps xmm0, xmmword [rsp + 0x250]
movaps xmm1, xmmword [rsp + 0x260]
movaps xmm2, xmmword [rsp + 0x2d0]
movaps xmm3, xmmword [rsp + 0x2e0]
movaps xmmword [rsp + 0x250], xmm2
movaps xmmword [rsp + 0x260], xmm3
movaps xmmword [rsp + 0x2d0], xmm0
movaps xmmword [rsp + 0x2e0], xmm1
mov r8, qword [rsp + 0x98]
cmp r8, 8
je 0x14036c3c0
movaps xmm0, xmmword [rsp + 0x270]
movaps xmm1, xmmword [rsp + 0x280]
movaps xmm2, xmmword [rsp + 0x2f0]
movaps xmm3, xmmword [rsp + 0x300]
movaps xmmword [rsp + 0x270], xmm2
movaps xmmword [rsp + 0x280], xmm3
movaps xmmword [rsp + 0x2f0], xmm0
movaps xmmword [rsp + 0x300], xmm1
cmp r8, 0x10
je 0x14036c3c0
movaps xmm0, xmmword [rsp + 0x290]
movaps xmm1, xmmword [rsp + 0x2a0]
movaps xmm2, xmmword [rsp + 0x310]
movaps xmm3, xmmword [rsp + 0x320]
movaps xmmword [rsp + 0x290], xmm2
movaps xmmword [rsp + 0x2a0], xmm3
movaps xmmword [rsp + 0x310], xmm0
movaps xmmword [rsp + 0x320], xmm1
cmp r8, 0x18
je 0x14036c3c0
movaps xmm0, xmmword [rsp + 0x2b0]
movaps xmm1, xmmword [rsp + 0x2c0]
movaps xmm2, xmmword [rsp + 0x330]
movaps xmm3, xmmword [rsp + 0x340]
movaps xmmword [rsp + 0x2b0], xmm2
movaps xmmword [rsp + 0x2c0], xmm3
movaps xmmword [rsp + 0x330], xmm0
movaps xmmword [rsp + 0x340], xmm1
nop word [rax + rax]
mov rbx, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x90]
cmp r8, rbp
jne 0x14036c500
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8, qword [rsp + 0xa0]
call fcn.140512320
mov eax, dword [0x14064c470]
lea ecx, [rax + 1]
mov dword [0x14064c470], ecx
mov qword [rsp + 0x40], rax
xor ecx, eax
not ecx
mov dword [rsp + 0x3c], ecx
nop
test r14b, r14b
jne 0x14036c42a
mov eax, dword [0x140695fa0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
je 0x14036c4e0
mov ecx, dword [0x14064d750]
lea eax, [rcx + 0x7900e2bb]
lea edx, [r12 + r12]
add edx, 0xce0
mov r8d, edx
not r8d
xor edx, eax
not eax
and eax, r8d
or eax, edx
not eax
mov edx, ecx
not edx
mov r8d, ecx
xor r8d, 0x86ff1d45
mov r9d, edx
and r9d, 0x7900e2ba
or r8d, r9d
not r8d
or r8d, r9d
xor ecx, 0x7900e2ba
and edx, 0x6ff1d45
or edx, ecx
not edx
lea ecx, [r8 + rdx*2]
cmp eax, ecx
jne 0x14036c410
jmp 0x14036c415
mov eax, dword [0x140695fa0]
mov edx, 0x82d6b851
sub edx, eax
imul edx, eax
test dl, 1
je 0x14036c4b6
mov eax, dword [0x140695fa0]
lea edx, [rax + 1]
imul edx, eax
test dl, 1
jne 0x14036c490
mov eax, dword [0x140695fa4]
cmp eax, 0x45
jg 0x14036c490
lea eax, [r8 - 1]
add rcx, 0xfffffffffffffffc
test r8d, r8d
mov r8d, eax
jg 0x14036c128
jmp 0x14036cc72
mov eax, dword [rsp + 0x3c]
test dword [rsp + 0x40], eax
je 0x14036c530
mov dword [rsp + 0x2c], 0
jmp 0x14036c550
dec rdx
xor r8d, r8d
nop word cs:[rax + rax]
mov r9d, dword [rbx + r8*4]
mov r10d, dword [rdi + r8*4]
mov dword [rbx + r8*4], r10d
mov dword [rdi + r8*4], r9d
cmp rdx, r8
je 0x14036c3db
inc r8
jmp 0x14036c510
xor ecx, ecx
mov dword [rsp + 0x2c], 0
test r15d, r15d
jg 0x14036cb3c
nop word cs:[rax + rax]
mov eax, dword [0x140695fa4]
nop word cs:[rax + rax]
mov eax, dword [0x140695fa4]
cmp eax, 0x38
jge 0x14036c560
lea rax, [rsp + 0xd4]
xor ecx, ecx
lea rdx, [rsp + 0x350]
nop dword [rax]
mov r8d, dword [rdx]
test r8d, r8d
je 0x14036c6ac
movzx r9d, r8w
shr r8d, 0x10
xor r10d, r10d
mov rsi, rbp
xor r15d, r15d
xor r13d, r13d
mov ebx, dword [rsp + r10 + 0x1d0]
mov r11d, dword [0x14064d750]
mov edi, 0x7900e2b9
add r11d, edi
mov ebp, ebx
not ebp
mov r14d, r11d
not r14d
mov r12d, r14d
xor r12d, ebp
xor ebp, r11d
not ebp
and ebp, r11d
and r12d, r14d
or r12d, ebp
not r12d
movzx r14d, r12w
shr ebx, 0x10
mov r11d, r14d
imul r11d, r9d
mov ebp, ebx
imul ebp, r8d
imul r14d, r8d
imul ebx, r9d
mov edi, r14d
xor edi, ebx
mov r12d, edi
not r12d
and r12d, r14d
lea edi, [rdi + r12*2]
mov r14d, r13d
or r14d, 0x10000
cmp edi, ebx
cmovae r14d, r13d
add r11d, r15d
mov ebx, edi
shr ebx, 0x10
shl edi, 0x10
add ebx, ebp
cmp r11d, r15d
adc ebx, 0x68068a14
mov r15d, ebx
xor r15d, r14d
and ebx, r14d
add ebx, ebx
add edi, r11d
adc ebx, r15d
xor r11d, r11d
add dword [rax + r10 - 4], edi
setb r11b
add ebx, 0x12d28657
mov edi, ebx
xor edi, r11d
and ebx, r11d
lea r15d, [rdi + rbx*2]
add r15d, 0x8526ef95
xor r13d, r13d
cmp r15d, ebp
setb r11b
mov rdi, rsi
not rdi
add rsi, rsi
add rsi, rdi
je 0x14036c690
mov r13b, r11b
add r10, 4
jmp 0x14036c5a0
add dword [rax + r10], r15d
mov rbp, qword [rsp + 0xc8]
xor r14d, r14d
lea r12, [fcn.14036bec0]
mov r13d, 0x7900e2ba
inc rcx
cmp rcx, rbp
je 0x14036c6d0
add rdx, 4
add rax, 4
jmp 0x14036c580
mov eax, dword [0x140695fa4]
cmp eax, 0x17
jle 0x14036c706
mov ecx, dword [0x140695fa0]
lea eax, [rcx - 1]
imul eax, ecx
mov ecx, dword [0x14064d750]
mov edx, ecx
xor edx, 0x7900e2bc
and ecx, 0x7900e2bc
lea ecx, [rdx + rcx*2]
xor edx, edx
div ecx
test edx, edx
jne 0x14036c6d0
test r14b, r14b
jne 0x14036c6db
xor r9d, r9d
mov rcx, qword [rsp + 0x30]
mov rsi, rcx
lea r15, [rsp + 0xd0]
cmp rbp, 1
je 0x14036c8bb
xor r9d, r9d
lea r15, [rsp + 0xd8]
mov rsi, qword [rsp + 0x58]
mov r13, rcx
xor r10d, r10d
nop
mov eax, dword [r15 - 8]
add r9d, eax
cmp r9d, eax
jb 0x14036c754
xor eax, eax
cmp dword [rsi - 8], r9d
jae 0x14036c759
mov eax, 1
mov ecx, dword [0x14064d750]
sub ecx, dword [rsi - 8]
add ecx, r9d
mov edx, 0x86ff1d46
sub edx, ecx
mov dword [rsi - 8], edx
mov ecx, dword [r15 - 4]
mov edx, ecx
xor edx, eax
and eax, ecx
add eax, eax
mov r8d, edx
xor r8d, eax
and eax, edx
lea eax, [r8 + rax*2]
cmp eax, ecx
jb 0x14036c793
xor r9d, r9d
cmp dword [rsi - 4], eax
jae 0x14036c7ab
mov ecx, dword [0x140695fa4]
nop dword [rax]
test r14b, r14b
jne 0x14036c7a0
mov r9d, 1
test r14b, r14b
jne 0x14036c870
nop word cs:[rax + rax]
mov ecx, dword [rsi - 4]
sub ecx, eax
add ecx, 0xa5346cf4
mov edx, ecx
xor edx, 0x5acb930c
and ecx, 0x5acb930c
lea ecx, [rdx + rcx*2]
mov dword [rsi - 4], ecx
mov rcx, qword [0x14064d748]
mov edx, dword [0x140695fa4]
cmp edx, 0x4c
jg 0x14036c870
movabs rdx, 0x3f3650f82135895f
sub r10, rdx
movabs rax, 0x5b643dea761a15ec
add r10, rax
add r10, rdx
movabs r11, 0x19eeef42574ffde0
mov rax, r11
sub rax, r10
movabs r8, 0xf27330b7cef78931
mov rdx, r8
xor rdx, rcx
and rcx, r8
lea rcx, [rdx + rcx*2]
movabs r8, 0x18e814a93caa7476
add rax, r8
mov rdx, r11
sub rdx, rax
sub rdx, rcx
lea r10, [rdx + r8]
add r10, 2
cmp r10, qword [rsp + 0xc0]
je 0x14036c8b0
add r13, 8
add rsi, 8
add r15, 8
jmp 0x14036c740
mov r11d, dword [rsi - 4]
mov ecx, eax
shl r11d, cl
mov edx, r11d
shl edx, cl
sub edx, r11d
mov r8d, r11d
mov ecx, edx
shl r8d, cl
sub r11d, r8d
mov edx, r11d
neg edx
mov ecx, r8d
shl edx, cl
mov edi, r8d
shl r11d, cl
sub edi, edx
add r11d, edi
neg r11d
mov dword [rsi - 4], r11d
jmp 0x14036c7c0
mov rcx, qword [rsp + 0x30]
mov r13d, 0x7900e2ba
cmp qword [rsp + 0xb8], 0
je 0x14036c8cc
add r9d, dword [r15]
sub dword [rsi], r9d
lea r8, [rsp + 0x350]
mov r9, rbp
cmp rbp, 8
jb 0x14036ca4a
mov rax, qword [rsp + 0x30]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmm2, xmmword [rsp + 0x350]
movaps xmm3, xmmword [rsp + 0x360]
movups xmmword [rax], xmm2
movups xmmword [rax + 0x10], xmm3
movaps xmmword [rsp + 0x350], xmm0
movaps xmmword [rsp + 0x360], xmm1
mov rdx, qword [rsp + 0x88]
cmp rdx, 8
je 0x14036c9d0
movups xmm0, xmmword [rax + 0x20]
movups xmm1, xmmword [rax + 0x30]
movaps xmm2, xmmword [rsp + 0x370]
movaps xmm3, xmmword [rsp + 0x380]
movups xmmword [rax + 0x20], xmm2
movups xmmword [rax + 0x30], xmm3
movaps xmmword [rsp + 0x370], xmm0
movaps xmmword [rsp + 0x380], xmm1
cmp rdx, 0x10
je 0x14036c9d0
movups xmm0, xmmword [rax + 0x40]
movups xmm1, xmmword [rax + 0x50]
movaps xmm2, xmmword [rsp + 0x390]
movaps xmm3, xmmword [rsp + 0x3a0]
movups xmmword [rax + 0x40], xmm2
movups xmmword [rax + 0x50], xmm3
movaps xmmword [rsp + 0x390], xmm0
movaps xmmword [rsp + 0x3a0], xmm1
cmp rdx, qword [rsp + 0x50]
je 0x14036c9d0
movups xmm0, xmmword [rax + 0x60]
movups xmm1, xmmword [rax + 0x70]
movaps xmm2, xmmword [rsp + 0x3b0]
movaps xmm3, xmmword [rsp + 0x3c0]
movups xmmword [rax + 0x60], xmm2
movups xmmword [rax + 0x70], xmm3
movaps xmmword [rsp + 0x3b0], xmm0
movaps xmmword [rsp + 0x3c0], xmm1
nop word cs:[rax + rax]
mov rcx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x80]
mov r9, qword [rsp + 0x78]
cmp rdx, rbp
je 0x14036cb2d
jmp 0x14036ca4a
neg rbx
neg r15
mov rax, rbx
xor rax, r15
and r15, rbx
lea rax, [rax + r15*2]
neg rax
mov qword [0x140693de8], rax
mov dword [rcx], esi
mov dword [r8], r10d
mov rax, r9
not rax
movabs rdx, 0xfc3b5febaaa247f2
sub rax, rdx
lea r9, [rax + r9*2]
movabs rax, 0x54bc72ca2ce6a87c
sub r9, rax
add r9, rdx
add rcx, 4
add r8, 4
add r9, rax
je 0x14036cb2d
mov eax, dword [rsp + 0x3c]
and eax, dword [rsp + 0x40]
mov r10d, dword [rcx]
mov esi, dword [r8]
movzx edx, word [0x140548510]
neg eax
mov eax, 0
sbb eax, eax
sub edx, dword [rsp + 0x2c]
xor eax, edx
and eax, edx
movzx r15d, ax
nop word cs:[rax + rax]
mov eax, dword [0x140695fa4]
cmp eax, 0x5e
jg 0x14036caa3
mov rbx, qword [0x140693de8]
mov eax, dword [0x140695fa0]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
je 0x14036cac0
mov eax, dword [0x14064d750]
mov edx, eax
xor edx, 0x7900e2ba
and eax, 0x7900e2ba
add eax, eax
add eax, edx
jne 0x14036ca80
jmp 0x14036ca8b
mov edx, dword [0x140695fa0]
lea eax, [rdx - 1]
imul eax, edx
mov edx, dword [0x14064d750]
mov r11d, edx
xor r11d, 0x7900e2bc
and edx, 0x7900e2bc
lea r11d, [r11 + rdx*2]
xor edx, edx
div r11d
test edx, edx
jne 0x14036cb00
nop
mov eax, dword [0x140695fa4]
cmp eax, 0x51
jl 0x14036c9f0
nop
cmp dword [0x14064d750], 0x86ff1d46
jne 0x14036cb00
jmp 0x14036caf0
mov eax, dword [0x140695fa0]
mov ecx, eax
not ecx
imul ecx, eax
and ecx, 1
mov eax, dword [0x14064d750]
add eax, r13d
cmp ecx, eax
je 0x14036cb32
test r14b, r14b
jne 0x14036cb10
test r14b, r14b
jne 0x14036cb10
jmp 0x14036c110
mov dword [rsp + 0x2c], 0
jmp 0x14036cb77
mov r8d, dword [rsp + 0x2c]
not r8d
mov edx, r8d
and edx, eax
or r8d, eax
not r8d
or r8d, edx
mov dword [rsp + 0x2c], r8d
add ecx, 2
cmp ecx, r15d
jge 0x14036c550
mov eax, dword [0x140695fa0]
nop dword [rax]
mov eax, dword [0x140695fa0]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
mov eax, dword [0x140695fa4]
cmp eax, 0x40
jg 0x14036cb8f
test r14b, r14b
jne 0x14036cb80
movsxd r8, ecx
add r8, rsi
mov eax, dword [0x140695fa4]
cmp eax, 0xb
jg 0x14036cc20
lea eax, [r12 + r12]
add eax, 0x37a0
mov edx, eax
not edx
and edx, eax
mov eax, dword [0x14064d750]
add eax, r13d
cmp edx, eax
jne 0x14036cc20
mov eax, dword [0x140695fa0]
lea edx, [rax - 1]
imul edx, eax
test dl, 1
mov edx, dword [0x140695fa0]
lea eax, [rdx - 1]
imul eax, edx
mov r9d, dword [0x14064d750]
lea r10d, [r9 + 0x7900e2bc]
xor edx, edx
div r10d
add r9d, 0x7900e2ba
cmp edx, r9d
jne 0x14036cbdb
mov eax, dword [0x140695fa4]
cmp eax, 0x27
jg 0x14036cc50
jmp 0x14036cc30
mov eax, dword [0x140695fa4]
cmp eax, 0xc
jge 0x14036cc20
jmp 0x14036cbb0
movzx eax, word [r8]
mov edx, dword [0x140695fa4]
cmp edx, 0x19
jl 0x14036cb50
nop word cs:[rax + rax]
movzx eax, word [r8]
lea eax, [r12 + r12]
add eax, 0x1820
mov edx, eax
not edx
and edx, eax
mov eax, dword [0x14064d750]
add eax, r13d
cmp edx, eax
jne 0x14036cc50
jmp 0x14036cc30
mov rax, qword [rsp + 0x30]
cmp dword [rax + rbp*4 - 4], 0
sets dl
setns cl
test rbp, rbp
sete al
setne r8b
and cl, r8b
and al, dl
mov r9d, ecx
or r9b, al
and r8b, dl
or r8b, r9b
cmp r8b, 1
mov r14, qword [rsp + 0x48]
jne 0x14036bef0
test cl, cl
jne 0x14036bef0
test al, al
jne 0x14036bef0
mov eax, dword [0x140695fa0]
lea ecx, [rax - 1]
imul ecx, eax
test cl, 1
nop dword [rax + rax]
mov rcx, rbp
xor rcx, 0xfffffffffffffffe
mov rax, rcx
and rax, rbp
add rax, qword [0x1406951e8]
add rax, qword [0x140694268]
mov edx, dword [0x140695fa0]
lea r8d, [rdx - 1]
imul r8d, edx
test r8b, 1
jne 0x14036ccd0
xor edx, edx
cmp rbp, 1
je 0x14036ce0f
movabs r8, 0xfe3fbd5b8f8c23b4
mov rdx, rbp
not rdx
xor rbp, 1
and rbp, rdx
or rcx, rbp
not rcx
mov r15, qword [rsp + 0x30]
add r15, 8
add r14, 8
xor edx, edx
mov r9, 0xfffffffffffffffe
sub r9, r8
mov r10, r9
xor r10, r8
and r9, r8
lea r8, [r10 + r9*2]
xor r9d, r9d
nop word cs:[rax + rax]
mov r10d, dword [0x14064d750]
sub r10d, dword [r14 - 8]
sub r10d, dword [0x140695fa8]
mov r11d, 0x86ff1d46
sub r11d, r10d
sub edx, r10d
add edx, 0x86ff1d46
cmp edx, r11d
setae r10b
setb r11b
add dword [r15 - 8], edx
setb dl
setae bl
mov esi, r11d
xor sil, dl
mov edi, r10d
xor dil, bl
mov ebp, r11d
and bpl, dl
or bpl, dil
not bpl
or bpl, sil
not bpl
and r10b, dl
xor r11b, bl
or r11b, r10b
not r11b
or r11b, r10b
or r11b, bpl
movzx edx, r11b
and edx, 1
mov r10d, dword [r14 - 4]
add edx, r10d
cmp edx, r10d
setb r10b
mov r11d, dword [r15 - 4]
add r11d, edx
mov dword [r15 - 4], r11d
cmp r11d, edx
setb dl
or dl, r10b
movzx edx, dl
sub r9, r8
cmp r9, rcx
je 0x14036ce0a
add r15, 8
add r14, 8
jmp 0x14036cd60
mov qword [rsp + 0x30], r15
test rax, rax
je 0x14036bef0
lea rax, [fcn.14036bec0]
add eax, eax
add eax, 0x3c0
mov ecx, eax
not ecx
mov r8d, 0x83b9feeb
mov r9d, 0xcd50747c
mov rdi, qword [rsp + 0x30]
nop dword [rax + rax]
test ecx, eax
jne 0x14036cea6
mov r10d, dword [r14]
add r10d, edx
mov r11d, dword [rdi]
add r11d, r8d
mov esi, r11d
xor esi, r10d
not r11d
not r10d
and r10d, r11d
or r10d, esi
not r10d
lea r10d, [rsi + r10*2]
mov r11d, dword [0x14064d750]
add r11d, r9d
mov esi, r11d
xor esi, 0x2f6a6d29
and r11d, 0x2f6a6d29
lea r11d, [rsi + r11*2]
sub r10d, r11d
mov dword [rdi], r10d
mov r10d, dword [0x140695fa0]
lea r11d, [r10 + 1]
imul r11d, r10d
test r11b, 1
je 0x14036bef0
mov r10d, dword [0x140695fa4]
cmp r10d, 0x3c
jge 0x14036ce40
jmp 0x14036ce44