Function at 0x1402b2df0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x118
mov r15, r9
mov r12, r8
mov qword [rsp + 0x20], rdx
mov qword [rsp + 0x68], rcx
mov rax, qword [rsp + 0x180]
mov rcx, qword [0x140521398]
xor rcx, rsp
mov qword [rsp + 0x110], rcx
mov rbp, r9
test rax, rax
je 0x1402b2e66
cmp rax, r15
setne cl
sete r8b
movzx edx, byte [0x140532a38]
test dl, r8b
jne 0x1402b2e63
mov r9d, edx
not r9b
mov rbp, rax
and r9b, r8b
jne 0x1402b2e66
and dl, cl
je 0x1402b301d
jmp 0x1402b2e66
mov rbp, rax
movabs r13, 0x9f76a2523d8c9451
lea r14, [r15*4]
mov rsi, qword [rsp + 0x68]
mov rcx, rsi
xor edx, edx
mov r8, r14
call fcn.1403e40c0
mov eax, 0xc849f563
add eax, dword [0x140506a08]
mov dword [rsi], eax
mov rax, qword [0x140506a10]
add rax, r13
add rax, 0x22
cmp r15, rax
seta al
cmp rbp, r15
setb cl
test al, cl
jne 0x1402b301d
xor al, cl
jne 0x1402b301d
lea rcx, [rsp + 0x80]
mov rdx, r12
mov r8, r14
call fcn.1403e3a10
mov qword [rsp + r15*4 + 0x80], 0
dec ebp
js 0x1402b2fbc
mov eax, ebp
mov rcx, qword [rsp + 0x20]
lea rax, [rcx + rax*4]
mov ecx, 0xc849f562
mov edx, dword [rax]
test edx, edx
je 0x1402b2fa0
mov r8d, 0x80000000
mov esi, 0x1f
test r8d, edx
jne 0x1402b3008
nop word cs:[rax + rax]
mov r9d, r8d
shr r9d, 1
mov r10d, dword [0x140506a08]
add r10d, ecx
xor r10d, edx
mov r11d, r10d
not r11d
xor r11d, r10d
mov edi, r11d
and edi, r9d
xor r9d, edx
xor edi, r11d
and edi, r10d
or edi, r9d
cmp edi, 0xffffffff
jne 0x1402b2ff1
mov r9d, r8d
shr r9d, 2
mov r10d, r9d
not r10d
mov r11d, edx
not r11d
and r9d, r11d
and r11d, r10d
and r10d, edx
or r9d, r10d
or r11d, r9d
cmp r11d, 0xffffffff
jne 0x1402b2ff5
mov r9d, r8d
shr r9d, 3
test r9d, edx
jne 0x1402b3005
cmp r8d, 0x10
jb 0x1402b2fa0
shr r8d, 4
add esi, 0xfffffffc
test r8d, edx
je 0x1402b2f20
jmp 0x1402b3008
add rax, 0xfffffffffffffffc
mov edx, dword [0x140506a08]
add edx, ebp
add edx, 0xc849f562
test ebp, ebp
mov ebp, edx
jg 0x1402b2ef8
mov rcx, qword [rsp + 0x110]
xor rcx, rsp
call fcn.1403bbdf0
mov rcx, qword [rsp + 0x68]
mov rdx, qword [rsp + 0x20]
mov r8, r14
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.1403e3a10
dec esi
jmp 0x1402b3008
mov eax, dword [0x140506a08]
add esi, eax
add esi, 0xc849f561
jmp 0x1402b3008
add esi, 0xfffffffd
dec r15d
mov eax, 0xc849f563
mov ecx, dword [0x140506a08]
add ecx, eax
cmp r15d, ecx
jge 0x1402b3042
mov rcx, qword [rsp + 0x110]
xor rcx, rsp
call fcn.1403bbdf0
nop
add rsp, 0x118
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea rcx, [0x14041418c]
movsxd rdx, dword [0x14041418c]
mov r8, rdx
xor r8, rcx
and rdx, rcx
lea rdx, [r8 + rdx*2]
mov r8d, dword [0x1404141b4]
mov ecx, r15d
lea r10, [rsp + rcx*4]
add r10, 0x80
xor eax, eax
mov qword [rsp + 0x48], rax
movabs rcx, 0x8eb7ea8bc9a137db
movabs r9, 0x71481574365ec824
or r9, rcx
mov ebx, 0xc849f562
mov r12d, r15d
mov qword [rsp + 0x28], rbp
mov ebp, dword [r10]
mov ecx, dword [0x14050686c]
lea eax, [rcx + 1]
mov dword [0x14050686c], eax
mov edi, ecx
not edi
xor ecx, eax
not eax
and eax, edi
or eax, ecx
xor eax, 0xffffffff
mov dword [rsp + 0x54], eax
je 0x1402b30c8
xor edi, edi
jmp 0x1402b3103
mov eax, dword [0x140506a08]
mov ecx, 0xc849f563
add eax, ecx
xor ecx, ecx
mov edi, 0
cmp eax, r8d
jge 0x1402b3103
xor edi, edi
nop word cs:[rax + rax]
movsxd rax, ecx
xor dil, byte [rdx + rax]
lea ecx, [rax + rax]
sub ecx, eax
inc ecx
cmp ecx, r8d
jl 0x1402b30f0
mov dword [rsp + 0x74], edi
test ebp, ebp
je 0x1402b31b9
mov r14d, 0x80000000
mov r11d, 0x1f
nop dword [rax + rax]
mov ecx, dword [0x140506a08]
add ecx, ebx
mov edi, ecx
xor edi, ecx
not edi
and edi, ebp
xor edi, ecx
mov ecx, r14d
not ecx
mov eax, edi
xor eax, ecx
and ecx, edi
not eax
and eax, r14d
or eax, ecx
test eax, r14d
jne 0x1402b31d8
mov eax, r14d
shr eax, 1
test eax, ebp
jne 0x1402b31e2
mov eax, r14d
shr eax, 2
test eax, ebp
jne 0x1402b31e9
mov eax, dword [0x140506a08]
mov ecx, eax
xor ecx, 0xc849f566
and eax, 0x4849f566
add eax, eax
mov edi, ecx
xor edi, eax
and eax, ecx
lea ecx, [rdi + rax*2]
mov eax, r14d
shr eax, cl
mov ecx, eax
not ecx
mov edi, ebp
not edi
and eax, edi
xor edi, ecx
not edi
and edi, ecx
and ecx, ebp
or eax, ecx
or edi, eax
cmp edi, 0xffffffff
jne 0x1402b31f1
cmp r14d, 0x10
jb 0x1402b31b9
shr r14d, 4
add r11d, 0xfffffffc
jmp 0x1402b3120
add r10, 0xfffffffffffffffc
lea eax, [r12 - 1]
sub qword [rsp + 0x48], r9
test r12d, r12d
mov r12d, eax
jg 0x1402b309d
jmp 0x1402b301d
mov r9, qword [rsp + 0x28]
mov edi, r11d
jmp 0x1402b31fc
mov edi, r11d
dec edi
jmp 0x1402b31f7
mov edi, r11d
add edi, 0xfffffffe
jmp 0x1402b31f7
mov edi, r11d
add edi, 0xfffffffd
mov r9, qword [rsp + 0x28]
mov ebx, r9d
sub ebx, r12d
jg 0x1402b3212
jne 0x1402b301d
cmp esi, edi
jl 0x1402b301d
mov r14d, esi
sub r14d, edi
shl ebx, 5
cmp r9d, r12d
jne 0x1402b329c
inc r12d
je 0x1402b351b
test byte [0x140531d38], 1
jne 0x1402b351b
test r14d, r14d
je 0x1402b351b
movsxd r8, r12d
movsxd r15, r14d
shr r15, 5
mov eax, r14d
and eax, 0x1f
mov rcx, qword [0x140506a10]
lea rdx, [r13 + 2]
mov r9, rdx
xor r9, rcx
and rdx, rcx
lea rcx, [r9 + rdx*2]
cmp rax, rcx
jne 0x1402b33ba
lea rcx, [rsp + r15*4]
add rcx, 0x80
sub r8, r15
shl r8, 2
lea rdx, [rsp + 0x80]
call fcn.1403e3a10
lea r10, [rsp + r15*4]
add r10, 0x7c
jmp 0x1402b347e
lea ecx, [r12 + 2]
inc r9d
mov qword [rsp + 0x28], r9
mov eax, r9d
mov dword [rsp + 0x34], ecx
sub eax, ecx
movsxd r9, eax
movsxd r11, r12d
mov r12d, esi
sub r12d, edi
add r12d, 0x20
setne cl
sete dl
mov r8, r11
add r8, 3
setne r10b
sete al
xor al, dl
and r10b, cl
or r10b, al
cmp r10b, 1
jne 0x1402b34e7
test al, al
jne 0x1402b34e7
mov qword [rsp + 0x60], r11
movsxd rcx, r12d
mov rbp, rcx
shr rbp, 5
xor rcx, 0xffffffffffffffe0
mov rax, qword [0x140506a10]
add rax, r13
movabs rdx, 0xc6ee9127ff302506
movabs r10, 0xfddb3b864ac0a524
add rax, rdx
add rax, r10
sub r10, rax
add r10, rdx
mov eax, 0x21
sub rax, r10
mov rdx, rcx
xor rdx, rax
or rax, rcx
not rax
or rax, rdx
xor rax, 0xffffffffffffffff
je 0x1402b348c
mov r11, qword [rsp + 0x60]
lea rdx, [rsp + r11*4]
add rdx, 0x88
cmp r8, rbp
jbe 0x1402b34cc
mov dword [rsp + 0x40], edi
lea r8, [rbp*4]
mov rcx, r8
neg rcx
mov r10d, dword [rdx + rcx]
mov ecx, eax
shl r10d, cl
add r11, 2
mov dword [rdx], r10d
lea r10, [rdx - 4]
mov qword [rsp + 0x38], rbp
cmp r11, rbp
seta cl
movzx edi, byte [0x140531d98]
test dil, cl
jne 0x1402b3b42
xor dil, cl
jne 0x1402b3b42
mov edi, dword [rsp + 0x40]
jmp 0x1402b34be
lea rdx, [rsp + r8*4]
add rdx, 0x7c
cmp r15, r8
jae 0x1402b3500
lea r9, [r15*4]
mov rcx, r9
neg rcx
mov r10d, dword [rdx + rcx]
mov ecx, eax
shl r10d, cl
lea r11, [r8 - 1]
mov dword [rdx], r10d
lea r10, [rdx - 4]
cmp r11, r15
jbe 0x1402b347e
mov ebp, edi
sub rdx, r9
mov r9d, 0x20
sub r9d, eax
mov rcx, r15
not rcx
add rcx, r8
mov rsi, 0xfffffffffffffffe
sub rsi, r15
mov rdi, rcx
not rdi
and rcx, 0xfffffffffffffffe
or rcx, rdi
cmp rcx, 0xffffffffffffffff
je 0x1402b3473
mov r11d, dword [rdx - 4]
mov ecx, r9d
shr r11d, cl
mov ecx, dword [rsp + r8*4 + 0x7c]
mov edi, r11d
xor edi, r11d
not edi
and edi, ecx
and ecx, r11d
xor edi, r11d
or edi, ecx
mov dword [rsp + r8*4 + 0x7c], edi
mov r11d, dword [rdx - 4]
mov ecx, eax
shl r11d, cl
add rdx, 0xfffffffffffffffc
mov dword [rsp + r8*4 + 0x78], r11d
mov r11, qword [0x140506a10]
add r11, r13
add r11, r8
add r10, 0xfffffffffffffffc
mov edi, ebp
add rsi, r8
jne 0x1402b3bd0
mov rdx, r10
cmp r14d, 0x20
jae 0x1402b3503
jmp 0x1402b351b
lea rcx, [rsp + rbp*4]
add rcx, 0x80
sub r8, rbp
shl r8, 2
lea rdx, [rsp + 0x80]
mov r15, r9
call fcn.1403e3a10
mov r9, r15
mov qword [rsp + 0x38], rbp
lea r10, [rsp + rbp*4]
add r10, 0x7c
mov rdx, r10
cmp r12d, 0x20
mov r8, qword [rsp + 0x38]
jb 0x1402b34e7
shl r8, 2
sub rdx, r8
add rdx, 4
mov rcx, rdx
xor edx, edx
mov r15, r9
call fcn.1403e40c0
mov r9, r15
mov rax, qword [rsp + 0x20]
lea rax, [rax + r9*4]
mov r15d, dword [rsp + 0x34]
cmp dword [rsp + 0x28], r15d
cmove esi, r12d
jmp 0x1402b3526
mov r15, r8
shl r15, 2
sub rdx, r15
add rdx, 4
mov rcx, rdx
xor edx, edx
mov r8, r15
call fcn.1403e40c0
mov esi, r14d
mov r15d, r12d
mov rax, qword [rsp + 0x20]
add r14d, ebx
movsxd rdx, r15d
lea r11, [rdx - 1]
lea ecx, [rdx - 1]
mov qword [rsp + 0x48], rcx
lea rcx, [rsp + rdx*4 + 0x7c]
mov qword [rsp + 0x40], rcx
mov rcx, qword [0x140506a10]
lea r8, [rcx + r13]
add r8, 2
mov qword [rsp + 0x28], r8
mov r8d, dword [0x140506a08]
sub r8d, edi
add r8d, 0xc849f5a2
mov dword [rsp + 0x30], r8d
lea r8, [rdx - 2]
mov qword [rsp + 0x38], r8
mov r8, rdx
not r8
movabs r9, 0xd24d30d2a994e303
mov r10, r13
sub r10, r9
add r10, r9
add r10, rcx
lea r9, [r13 + 1]
mov rdi, r9
xor rdi, rcx
and r9, rcx
add r9, r9
mov rbx, rdi
xor rbx, r9
and r9, rdi
lea r9, [rbx + r9*2]
mov rdi, r9
xor rdi, r9
not rdi
and rdi, r10
xor rdi, r9
and rdi, r8
mov r8, rdx
xor r8, 0xfffffffffffffffe
or r8, rdi
mov r9, r13
xor r9, rcx
and rcx, r13
lea rcx, [r9 + rcx*2]
add rcx, rdx
mov qword [rsp + 0x60], rcx
mov rcx, r11
xor rcx, 0xfffffffffffffffe
mov qword [rsp + 0x58], rcx
lea rcx, [rsp + rdx*4]
add rcx, 0x78
mov qword [rsp + 0x78], rcx
mov rbx, 0xfffffffffffffffd
sub rbx, r8
xor r10d, r10d
mov edi, dword [rsp + 0x54]
mov dword [rsp + 0x34], r15d
jmp 0x1402b3623
cmp rax, qword [rsp + 0x20]
mov esi, 0x1f
cmove esi, dword [rsp + 0x30]
mov edi, dword [rsp + 0x54]
xor ecx, ecx
test r10d, r10d
sete cl
lea r10d, [rcx + rcx + 1]
jne 0x1402b3690
test r15d, r15d
jle 0x1402b3690
mov rcx, qword [rsp + 0x48]
mov r10d, 0xc849f563
nop word cs:[rax + rax]
mov r8d, dword [rax + rcx*4]
mov r9d, dword [rsp + rcx*4 + 0x80]
cmp r8d, r9d
ja 0x1402b3677
jb 0x1402b367f
mov r8d, dword [0x140506a08]
add r8d, r10d
cmp ecx, r8d
jle 0x1402b3684
dec rcx
jmp 0x1402b3650
mov r10d, 1
jmp 0x1402b3690
xor r10d, r10d
jmp 0x1402b3690
mov r10d, 3
nop word [rax + rax]
mov ecx, dword [0x140533658]
lea r8d, [rcx - 1]
imul r8d, ecx
test r8b, 1
jne 0x1402b3a20
nop dword [rax + rax]
test edi, edi
setne r8b
movzx ecx, byte [0x14041419d]
mov r9d, dword [0x14053365c]
cmp r9d, 0x53
jg 0x1402b3a20
mov r9d, dword [0x140533658]
nop word cs:[rax + rax]
mov r9d, dword [0x14053365c]
cmp r9d, 0x53
jg 0x1402b36e0
dec r8b
mov r9d, dword [0x14053365c]
mov edi, dword [rsp + 0x74]
nop dword [rax + rax]
mov r9d, dword [0x14053365c]
cmp r9d, 0x4a
jg 0x1402b3700
sub cl, dil
xor r8b, cl
not r8b
mov r9d, r8d
not r9b
mov edi, r9d
and dil, cl
not cl
and r8b, cl
or r8b, dil
and cl, r9b
or cl, r8b
not cl
movzx r8d, byte [0x140506a18]
add r8b, 0x63
cmp cl, r8b
setne cl
or cl, byte [0x140531d98]
and cl, 1
mov byte [0x140531d98], cl
movsxd r14, r14d
jmp 0x1402b3760
mov r10d, 1
nop
test r10d, r10d
je 0x1402b38c3
test edx, edx
je 0x1402b388e
test r11, r11
je 0x1402b39f9
xor r10d, r10d
mov rcx, 0xfffffffffffffff8
xor r12d, r12d
nop word [rax + rax]
mov r8d, dword [rsp + r10*4 + 0x80]
mov r9d, r8d
neg r9d
neg r12d
mov edi, r9d
xor edi, r12d
and r12d, r9d
lea edi, [rdi + r12*2]
mov r9d, dword [0x140506a08]
mov r15d, r9d
not r15d
mov r12d, r9d
and r12d, 0x37b60a9c
mov ebp, r15d
and ebp, 0xc849f563
or ebp, r12d
xor r9d, 0x4849f563
and r15d, 0x37b60a9c
or r15d, r9d
not r15d
lea r9d, [rbp + r15*2]
sub r9d, edi
cmp r9d, r8d
jb 0x1402b37fb
xor r8d, r8d
cmp dword [rax + r10*4], r9d
jae 0x1402b3801
mov r8d, 1
sub dword [rax + r10*4], r9d
mov r9d, dword [rsp + r10*4 + 0x84]
mov edi, dword [0x140506a08]
add edi, r9d
add r8d, edi
add r8d, 0xc849f563
cmp r8d, r9d
jb 0x1402b382f
xor r12d, r12d
cmp dword [rax + r10*4 + 4], r8d
jae 0x1402b3835
mov r12d, 1
sub dword [rax + r10*4 + 4], r8d
cmp rbx, r10
je 0x1402b3850
add rcx, 0xfffffffffffffff8
add r10, 2
jmp 0x1402b3790
mov r8, rax
sub r8, rcx
lea r9, [rsp + 0x80]
sub r9, rcx
mov r15d, dword [rsp + 0x34]
test dl, 1
je 0x1402b388e
mov ecx, dword [0x140506a08]
mov r10d, ecx
xor r10d, 0xc849f563
and ecx, 0x4849f563
lea ecx, [r10 + rcx*2]
sub ecx, r12d
sub ecx, dword [r9]
add dword [r8], ecx
mov r8, r14
xor ecx, ecx
sub ecx, dword [0x140506a08]
mov r9d, ecx
xor r9d, 0x37b60a9c
and ecx, 0x37b60a9c
lea r9d, [r9 + rcx*2]
neg r9d
mov ecx, r14d
shl r9d, cl
shr r8, 5
mov rcx, qword [rsp + 0x68]
or dword [rcx + r8*4], r9d
dec r14
test esi, esi
jle 0x1402b3a30
dec esi
mov r10d, 3
test r15d, r15d
je 0x1402b3760
shr dword [rsp + 0x80], 1
test r11, r11
je 0x1402b394a
mov r9d, dword [rsp + 0x80]
test r11b, 1
jne 0x1402b3909
lea rdi, [rsp + 0x80]
mov r12, rdi
mov r8, r11
jmp 0x1402b393e
mov ecx, dword [rsp + 0x84]
mov r8d, ecx
shl r8d, 0x1f
or r9d, r8d
mov dword [rsp + 0x80], r9d
shr ecx, 1
mov dword [rsp + 0x84], ecx
mov r9d, ecx
lea rdi, [rsp + 0x84]
mov r12, rdi
mov r8, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x38]
cmp rcx, qword [rsp + 0x28]
jne 0x1402b3988
test edx, edx
mov r15d, dword [rsp + 0x34]
jle 0x1402b3760
mov rcx, qword [rsp + 0x48]
nop dword [rax]
mov r8d, dword [rax + rcx*4]
mov r9d, dword [rsp + rcx*4 + 0x80]
cmp r8d, r9d
ja 0x1402b3758
jb 0x1402b3a15
test ecx, ecx
jle 0x1402b3760
dec rcx
jmp 0x1402b3960
xor r15d, r15d
nop dword [rax + rax]
mov ebp, dword [r12 + r15 + 4]
movzx ecx, byte [0x140506a08]
add cl, 0x82
shl ebp, cl
or ebp, r9d
mov dword [rdi + r15], ebp
mov r9d, dword [r12 + r15 + 4]
movzx ecx, byte [0x140506a08]
add cl, 0x64
shr r9d, cl
mov rcx, r8
mov dword [rdi + r15 + 4], r9d
mov r8d, dword [r12 + r15 + 8]
shl r8d, 0x1f
or r8d, r9d
mov dword [rdi + r15 + 4], r8d
mov r9d, dword [r12 + r15 + 8]
shr r9d, 1
mov dword [rdi + r15 + 8], r9d
mov r8, qword [0x140506a10]
add r8, r13
add r8, rcx
je 0x1402b394a
add r15, 8
jmp 0x1402b3990
xor r12d, r12d
mov r8, rax
lea r9, [rsp + 0x80]
test dl, 1
jne 0x1402b386b
jmp 0x1402b388e
xor r10d, r10d
jmp 0x1402b3760
movzx ecx, byte [0x14041419d]
jmp 0x1402b36b0
cmp rax, qword [rsp + 0x20]
je 0x1402b301d
cmp dword [rax + rdx*4 - 4], 0
je 0x1402b3a60
mov dword [rax + rdx*4 - 4], 0
mov r10d, 1
jmp 0x1402b3a63
xor r10d, r10d
add rax, 0xfffffffffffffffc
test r15d, r15d
je 0x1402b3610
movzx ecx, byte [0x140506a08]
add cl, 0x82
mov r8, qword [rsp + 0x40]
shl dword [r8], cl
cmp r11, qword [rsp + 0x28]
je 0x1402b3610
mov rcx, qword [rsp + 0x40]
mov r9, r11
test byte [rsp + 0x58], 1
je 0x1402b3af3
movzx ecx, byte [0x140506a08]
add cl, 0x64
mov r12, qword [rsp + 0x40]
mov r8d, dword [r12 - 4]
mov r9d, dword [r12]
mov esi, r8d
shr esi, cl
mov ecx, r9d
not ecx
mov edi, esi
not edi
mov ebp, ecx
and ebp, esi
xor esi, r9d
and r9d, edi
or r9d, ebp
xor ecx, edi
not ecx
and ecx, edi
or ecx, r9d
not ecx
or esi, ecx
mov dword [r12], esi
shl r8d, 0x1f
mov dword [r12 - 4], r8d
mov rcx, qword [rsp + 0x78]
mov r9, qword [rsp + 0x38]
cmp qword [rsp + 0x38], 0
je 0x1402b3610
mov r8d, 2
sub r8, r9
xor r9d, r9d
nop dword [rax + rax]
mov esi, dword [rcx + r9*4 - 8]
mov edi, dword [rcx + r9*4 - 4]
mov ebp, edi
shr ebp, 1
or dword [rcx + r9*4], ebp
shld edi, esi, 0x1f
mov dword [rcx + r9*4 - 4], edi
shl esi, 0x1f
mov dword [rcx + r9*4 - 8], esi
cmp r8, r9
je 0x1402b3610
add r9, 0xfffffffffffffffe
jmp 0x1402b3b10
sub rdx, r8
mov ecx, 0x20
sub ecx, eax
mov dword [rsp + 0x30], ecx
mov rdi, qword [rsp + 0x60]
mov rcx, rdi
mov rbp, qword [rsp + 0x38]
sub rcx, rbp
add rcx, qword [0x140533660]
movsxd r8, r15d
inc r8
mov qword [rsp + 0x58], r8
movabs r15, 0x8b9f3595107b5a8
mov r8, qword [rsp + 0x48]
sub r8, r15
add r8, r15
add r8, rbp
mov r15, rcx
xor r15, 0xfffffffffffffffe
test r15, rcx
je 0x1402b3c31
mov r11d, dword [rdx - 4]
mov ebp, dword [rsp + 0x30]
mov ecx, ebp
shr r11d, cl
or dword [rsp + rdi*4 + 0x88], r11d
mov r11d, dword [rdx - 4]
add rdx, 0xfffffffffffffffc
mov ecx, eax
shl r11d, cl
mov dword [rsp + rdi*4 + 0x84], r11d
inc rdi
add r10, 0xfffffffffffffffc
mov r11, rdi
jmp 0x1402b3c35
add rdx, 0xfffffffffffffffc
add r10, 0xfffffffffffffff8
add r11, 0xfffffffffffffffe
mov r8d, dword [rdx]
mov ecx, r9d
shr r8d, cl
or dword [r10 + 0xc], r8d
mov r8d, dword [rdx]
mov ecx, eax
shl r8d, cl
mov dword [r10 + 8], r8d
mov esi, dword [rdx - 4]
mov ecx, r9d
shr esi, cl
mov ecx, r8d
not ecx
xor r8d, esi
not esi
and esi, ecx
or esi, r8d
not esi
or esi, r8d
mov dword [r10 + 8], esi
mov r8d, dword [rdx - 4]
mov ecx, eax
shl r8d, cl
mov dword [r10 + 4], r8d
cmp r11, r15
jbe 0x1402b347e
add rdx, 0xfffffffffffffff8
jmp 0x1402b3bd4
mov ebp, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x58]
cmp rcx, r8
mov edi, dword [rsp + 0x40]
je 0x1402b34be
mov qword [rsp + 0x48], r9
add rdx, 0xfffffffffffffffc
add r10, 0xfffffffffffffff8
add r11, 0xfffffffffffffffe
mov r8d, dword [rdx]
mov ecx, ebp
shr r8d, cl
mov ecx, dword [r10 + 0xc]
mov edi, r8d
not edi
mov r15d, r8d
xor r15d, edi
and r15d, ecx
xor r15d, edi
and r15d, r8d
mov r9d, r8d
xor r9d, ecx
and r9d, r8d
and edi, ecx
or edi, r9d
or edi, r15d
mov dword [r10 + 0xc], edi
mov r8d, dword [rdx]
mov ecx, eax
shl r8d, cl
mov dword [r10 + 8], r8d
mov r9d, dword [rdx - 4]
mov ecx, ebp
shr r9d, cl
or r9d, r8d
mov dword [r10 + 8], r9d
mov r8d, dword [rdx - 4]
mov ecx, eax
shl r8d, cl
mov dword [r10 + 4], r8d
cmp r11, qword [rsp + 0x38]
jbe 0x1402b3cc3
add rdx, 0xfffffffffffffff8
jmp 0x1402b3c50
mov edi, dword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
jmp 0x1402b34be