Function at 0x1400294b0
Capabilities:
Encode data using base64

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
cmp dword [rsp + 0x98], 1
movabs rax, 0x5555555555555555
mov rbp, qword [rdx]
mov r14, rdx
mov edi, r9d
mov rsi, r8
mov r9, qword [rsp + 0x90]
mov r10, rcx
mov qword [rsp + 0x78], rax
movabs rdx, 0x3333333333333333
mov r13, 0xffffffffffffffff
mov rbx, qword [r9]
je 0x1400296cf
test dil, 1
je 0x140029583
bt rbp, rdi
jae 0x140029526
lea eax, [rdi - 1]
lea r8, [r14 + rdi*8]
jmp 0x140029536
cmp edi, 1
je 0x14002954e
lea r8, [r14 - 8]
lea r8, [r8 + rdi*8]
lea eax, [rdi - 2]
mov r11, qword [r14 + rax*8 + 0x200]
mov rax, rdi
cmp edi, 0x3f
jne 0x140029559
xor r12d, r12d
xor r15d, r15d
jmp 0x1400295a5
xor r11d, r11d
mov eax, 1
xor r8d, r8d
lea rax, [rax + 1]
lea ecx, [rdi + 2]
lea r12, [r14 + rax*8]
mov eax, ecx
bt rbp, rax
jae 0x140029579
lea eax, [rdi + 1]
mov r15, qword [r14 + rax*8 + 0x200]
jmp 0x1400295a5
mov r15, qword [r14 + rcx*8 + 0x200]
jmp 0x1400295a5
lea r8, [r14 + rdi*8]
lea eax, [rdi + 1]
mov r15, qword [r14 + rax*8 + 0x200]
lea r12, [r8 + 8]
test edi, edi
je 0x1400295fe
lea eax, [rdi - 1]
mov r11, qword [r14 + rax*8 + 0x200]
test r11, r11
je 0x140029604
mov rcx, qword [r11]
movabs r10, 0x5555555555555555
mov rax, rcx
shr rax, 1
and rax, r10
sub rcx, rax
mov rax, rcx
and rcx, rdx
shr rax, 2
and rax, rdx
add rax, rcx
mov r10, rax
shr r10, 4
add r10, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and r10, rax
movabs rax, 0x101010101010101
imul r10, rax
shr r10, 0x38
jmp 0x14002960a
xor r11d, r11d
xor r8d, r8d
mov r10d, 0x40
test r15, r15
je 0x14002965b
mov rcx, qword [r15]
mov rax, rcx
shr rax, 1
and rax, qword [rsp + 0x78]
sub rcx, rax
mov rax, rcx
and rcx, rdx
shr rax, 2
and rax, rdx
add rax, rcx
mov rdx, rax
shr rdx, 4
add rdx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rdx, rax
movabs rax, 0x101010101010101
imul rdx, rax
shr rdx, 0x38
jmp 0x140029660
mov edx, 0x40
mov eax, edx
or eax, r10d
test eax, 0xffffffbf
je 0x1400296b8
cmp r10d, edx
jae 0x14002968f
cmp r10d, 0x3d
jae 0x1400296ac
mov qword [rsp + 0x20], r9
mov edx, r10d
mov r9, rsi
mov rcx, r11
call fcn.140034960
mov r11d, eax
jmp 0x1400296af
cmp edx, 0x3d
jae 0x1400296ac
mov qword [rsp + 0x20], r9
mov r8, r12
mov r9, rsi
mov rcx, r15
call fcn.140034b70
mov r11d, eax
jmp 0x1400296af
mov r11d, r13d
test r11d, r11d
jns 0x14002ade7
mov r12, qword [rbx + 0x100]
mov r15d, 0x3f5
mov r10, qword [rsp + 0x70]
jmp 0x1400299f5
mov r12, qword [rbx + 0x100]
cmp rsi, r12
jae 0x140029849
cmp rsi, qword [rbx + 0x80]
jae 0x140029782
cmp rsi, qword [rbx + 0x40]
jae 0x140029738
cmp rsi, qword [rbx + 0x20]
jae 0x140029716
cmp rsi, qword [rbx + 0x10]
jae 0x140029708
mov ecx, 1
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x18]
sbb ecx, ecx
add ecx, 3
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x30]
jae 0x14002972a
cmp rsi, qword [rbx + 0x28]
sbb ecx, ecx
add ecx, 5
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x38]
sbb ecx, ecx
add ecx, 7
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x60]
jae 0x140029760
cmp rsi, qword [rbx + 0x50]
jae 0x140029752
cmp rsi, qword [rbx + 0x48]
sbb ecx, ecx
add ecx, 9
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x58]
sbb ecx, ecx
add ecx, 0xb
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x70]
jae 0x140029774
cmp rsi, qword [rbx + 0x68]
sbb ecx, ecx
add ecx, 0xd
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x78]
sbb ecx, ecx
add ecx, 0xf
jmp 0x1400299cd
cmp rsi, qword [rbx + 0xc0]
jae 0x1400297ea
cmp rsi, qword [rbx + 0xa0]
jae 0x1400297bf
cmp rsi, qword [rbx + 0x90]
jae 0x1400297ae
cmp rsi, qword [rbx + 0x88]
sbb ecx, ecx
add ecx, 0x11
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x98]
sbb ecx, ecx
add ecx, 0x13
jmp 0x1400299cd
cmp rsi, qword [rbx + 0xb0]
jae 0x1400297d9
cmp rsi, qword [rbx + 0xa8]
sbb ecx, ecx
add ecx, 0x15
jmp 0x1400299cd
cmp rsi, qword [rbx + 0xb8]
sbb ecx, ecx
add ecx, 0x17
jmp 0x1400299cd
cmp rsi, qword [rbx + 0xe0]
jae 0x14002981e
cmp rsi, qword [rbx + 0xd0]
jae 0x14002980d
cmp rsi, qword [rbx + 0xc8]
sbb ecx, ecx
add ecx, 0x19
jmp 0x1400299cd
cmp rsi, qword [rbx + 0xd8]
sbb ecx, ecx
add ecx, 0x1b
jmp 0x1400299cd
cmp rsi, qword [rbx + 0xf0]
jae 0x140029838
cmp rsi, qword [rbx + 0xe8]
sbb ecx, ecx
add ecx, 0x1d
jmp 0x1400299cd
cmp rsi, qword [rbx + 0xf8]
sbb ecx, ecx
add ecx, 0x1f
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x180]
jae 0x14002991d
cmp rsi, qword [rbx + 0x140]
jae 0x1400298be
cmp rsi, qword [rbx + 0x120]
jae 0x140029893
cmp rsi, qword [rbx + 0x110]
jae 0x140029882
cmp rsi, qword [rbx + 0x108]
sbb ecx, ecx
add ecx, 0x21
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x118]
sbb ecx, ecx
add ecx, 0x23
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x130]
jae 0x1400298ad
cmp rsi, qword [rbx + 0x128]
sbb ecx, ecx
add ecx, 0x25
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x138]
sbb ecx, ecx
add ecx, 0x27
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x160]
jae 0x1400298f2
cmp rsi, qword [rbx + 0x150]
jae 0x1400298e1
cmp rsi, qword [rbx + 0x148]
sbb ecx, ecx
add ecx, 0x29
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x158]
sbb ecx, ecx
add ecx, 0x2b
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x170]
jae 0x14002990c
cmp rsi, qword [rbx + 0x168]
sbb ecx, ecx
add ecx, 0x2d
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x178]
sbb ecx, ecx
add ecx, 0x2f
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x1c0]
jae 0x14002997c
cmp rsi, qword [rbx + 0x1a0]
jae 0x140029957
cmp rsi, qword [rbx + 0x190]
jae 0x140029949
cmp rsi, qword [rbx + 0x188]
sbb ecx, ecx
add ecx, 0x31
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x198]
sbb ecx, ecx
add ecx, 0x33
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x1b0]
jae 0x14002996e
cmp rsi, qword [rbx + 0x1a8]
sbb ecx, ecx
add ecx, 0x35
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x1b8]
sbb ecx, ecx
add ecx, 0x37
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x1e0]
jae 0x1400299aa
cmp rsi, qword [rbx + 0x1d0]
jae 0x14002999c
cmp rsi, qword [rbx + 0x1c8]
sbb ecx, ecx
add ecx, 0x39
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x1d8]
sbb ecx, ecx
add ecx, 0x3b
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x1f0]
jae 0x1400299c1
cmp rsi, qword [rbx + 0x1e8]
sbb ecx, ecx
add ecx, 0x3d
jmp 0x1400299cd
cmp rsi, qword [rbx + 0x1f8]
sbb ecx, ecx
add ecx, 0x3f
mov eax, ecx
cmp qword [rbx + rax*8], rsi
je 0x14002ade1
lea r15d, [rcx - 1]
cmovbe r15d, ecx
cmp r15d, 0x1f
je 0x1400299f2
jae 0x1400299f5
mov r12, qword [rbx + 0xf8]
jmp 0x1400299f5
mov r12, rsi
cmp dword [rsp + 0x98], 1
lea rdx, [rsp + 0x78]
mov rcx, qword [r10 + 0x48]
mov eax, 0x400
mov r8d, 0x200
cmovne r8d, eax
call qword [r10 + 0x38]
mov r11d, eax
test eax, eax
je 0x140029a2b
mov r11d, 0xfffffffc
jmp 0x14002ade7
test dil, 1
je 0x140029e52
mov ecx, edi
mov r8d, 1
shl r8, cl
test rbp, r8
je 0x140029e20
cmp edi, 0x3f
je 0x140029d44
lea ecx, [rdi + 2]
mov eax, ecx
bt rbp, rax
jae 0x140029d10
mov r10, rbp
mov ecx, edi
not r10
shl r13, cl
and r13, r10
je 0x140029c3d
movabs r9, 0x3333333333333333
lea rcx, [r13 - 1]
movabs rdx, 0x5555555555555555
not r13
and rcx, r13
mov rax, rcx
shr rax, 1
and rax, rdx
sub rcx, rax
mov rax, rcx
and rcx, r9
shr rax, 2
and rax, r9
mov r9d, 1
add rax, rcx
mov rdx, rax
shr rdx, 4
add rdx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rdx, rax
movabs rax, 0x101010101010101
imul rdx, rax
shr rdx, 0x38
mov ecx, edx
mov eax, edx
shl r9, cl
sub ecx, edi
sub ecx, 2
sub r9, r8
shr r9, cl
and r9, r10
je 0x140029bd0
mov rcx, r9
mov r8d, 0x20
shr rcx, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr r9, cl
sub r8, rcx
lea rcx, [r9 - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl r9, cl
add r8, rcx
lea rcx, [r9 - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl r9, cl
add r8, rcx
lea rcx, [r9 - 0x10000000]
shr rcx, 0x20
and ecx, 4
shl r9, cl
add r8, rcx
lea rcx, [r9 - 0x40000000]
shr rcx, 0x20
and ecx, 2
shl r9, cl
shr r9, 0x1e
mov rax, r9
shr rax, 1
not eax
and eax, r9d
lea r9, [r14 + 8]
sub ecx, eax
lea eax, [r8 + 2]
add eax, ecx
lea r8, [r14 + 0x200]
xor eax, 0x3f
mov ecx, eax
bts rbp, rcx
mov qword [r14], rbp
lea edx, [rax - 1]
sub edi, edx
lea r8, [r8 + rdx*8]
lea r9, [r9 + rdx*8]
sub edi, 1
je 0x14002a10b
nop word [rax + rax]
mov rax, qword [r9 + 8]
mov qword [r9], rax
add r9, 8
mov rax, qword [r8 + 8]
mov qword [r8], rax
add r8, 8
add edi, 0xffffffff
jne 0x140029bb0
jmp 0x14002a10b
dec edx
bts rbp, rax
lea r9, [r14 + 0x200]
mov qword [r14], rbp
lea r8, [r14 + 8]
lea r9, [r9 + rdx*8]
lea r8, [r8 + rdx*8]
sub edx, edi
sub edx, 1
je 0x140029c1b
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r8 - 8]
mov qword [r8], rax
add r8, 0xfffffffffffffff8
mov rax, qword [r9 - 8]
mov qword [r9], rax
add r9, 0xfffffffffffffff8
add edx, 0xffffffff
jne 0x140029c00
mov rax, qword [r8 - 8]
movabs r10, 0x5555555555555555
mov qword [r8], rax
mov qword [r8 - 8], r12
mov rax, qword [rsp + 0x78]
mov qword [r9], rax
jmp 0x14002a1ef
mov rcx, r10
lea r9, [r14 + 8]
shr rcx, 0x20
mov r8d, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr r10, cl
sub r8, rcx
lea rcx, [r10 - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl r10, cl
add r8, rcx
lea rcx, [r10 - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl r10, cl
add r8, rcx
lea rcx, [r10 - 0x10000000]
shr rcx, 0x20
and ecx, 4
add r8, rcx
shl r10, cl
lea rcx, [r10 - 0x40000000]
shr rcx, 0x20
and ecx, 2
shl r10, cl
shr r10, 0x1e
mov rax, r10
shr rax, 1
not eax
and eax, r10d
sub ecx, eax
lea eax, [r8 + 2]
add eax, ecx
lea r8, [r14 + 0x200]
xor eax, 0x3f
mov ecx, eax
bts rbp, rcx
mov qword [r14], rbp
lea edx, [rax - 1]
sub edi, edx
lea r8, [r8 + rdx*8]
lea r9, [r9 + rdx*8]
sub edi, 1
je 0x14002a10b
nop dword [rax + rax]
mov rax, qword [r9 + 8]
mov qword [r9], rax
add r9, 8
mov rax, qword [r8 + 8]
mov qword [r8], rax
add r8, 8
add edi, 0xffffffff
jne 0x140029cf0
jmp 0x14002a10b
mov rax, qword [rsp + 0x78]
movabs r10, 0x5555555555555555
mov edx, ecx
lea ecx, [rdi + 1]
bts rbp, rdx
mov qword [r14], rbp
mov qword [r14 + rcx*8 + 0x200], rax
mov rax, qword [r14 + rcx*8]
mov qword [r14 + rdx*8], rax
mov qword [r14 + rcx*8], r12
jmp 0x14002a1ef
mov rdx, rbp
lea r9, [r14 + 8]
not rdx
mov r8d, 0x20
mov rcx, rdx
shr rcx, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr rdx, cl
sub r8, rcx
lea rcx, [rdx - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl rdx, cl
add r8, rcx
lea rcx, [rdx - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl rdx, cl
add r8, rcx
lea rcx, [rdx - 0x10000000]
shr rcx, 0x20
and ecx, 4
shl rdx, cl
add r8, rcx
lea rcx, [rdx - 0x40000000]
shr rcx, 0x20
and ecx, 2
shl rdx, cl
shr rdx, 0x1e
mov rax, rdx
shr rax, 1
not eax
and eax, edx
sub ecx, eax
lea eax, [r8 + 2]
add eax, ecx
lea r8, [r14 + 0x200]
xor eax, 0x3f
mov ecx, eax
bts rbp, rcx
mov qword [r14], rbp
lea edx, [rax - 1]
sub edi, edx
lea r8, [r8 + rdx*8]
lea r9, [r9 + rdx*8]
sub edi, 1
je 0x14002a10b
nop word [rax + rax]
mov rax, qword [r9 + 8]
mov qword [r9], rax
add r9, 8
mov rax, qword [r8 + 8]
mov qword [r8], rax
add r8, 8
add edi, 0xffffffff
jne 0x140029e00
jmp 0x14002a10b
lea eax, [rdi - 1]
movabs r10, 0x5555555555555555
bts rbp, rdi
mov qword [r14], rbp
mov qword [r14 + rax*8 + 0x200], rbx
mov rax, qword [rsp + 0x78]
mov qword [r14 + rdi*8 + 0x200], rax
mov qword [r14 + rdi*8], r12
jmp 0x14002a1ef
mov r10, rbp
not r10
test edi, edi
je 0x14002a12d
mov ecx, edi
shl r13, cl
and r13, r10
je 0x14002a03d
movabs r9, 0x3333333333333333
lea rcx, [r13 - 1]
movabs rdx, 0x5555555555555555
not r13
and rcx, r13
mov rax, rcx
shr rax, 1
and rax, rdx
sub rcx, rax
mov rax, rcx
and rcx, r9
shr rax, 2
and rax, r9
mov r9d, 1
add rax, rcx
mov rdx, rax
shr rdx, 4
add rdx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rdx, rax
movabs rax, 0x101010101010101
imul rdx, rax
mov eax, 1
shr rdx, 0x38
mov ecx, edx
mov r8d, edx
shl r9, cl
mov ecx, edi
shl rax, cl
mov ecx, edx
sub ecx, edi
sub r9, rax
sub ecx, 2
shr r9, cl
and r9, r10
je 0x140029fd0
mov rcx, r9
mov r8d, 0x20
shr rcx, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr r9, cl
sub r8, rcx
lea rcx, [r9 - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl r9, cl
add r8, rcx
lea rcx, [r9 - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl r9, cl
add r8, rcx
lea rcx, [r9 - 0x10000000]
shr rcx, 0x20
and ecx, 4
shl r9, cl
add r8, rcx
lea rcx, [r9 - 0x40000000]
shr rcx, 0x20
and ecx, 2
shl r9, cl
shr r9, 0x1e
mov rax, r9
shr rax, 1
not eax
and eax, r9d
lea r9, [r14 + 8]
sub ecx, eax
lea eax, [r8 + 2]
add eax, ecx
lea r8, [r14 + 0x200]
xor eax, 0x3f
mov ecx, eax
bts rbp, rcx
mov qword [r14], rbp
lea edx, [rax - 1]
sub edi, edx
lea r8, [r8 + rdx*8]
lea r9, [r9 + rdx*8]
sub edi, 1
je 0x14002a10b
nop dword [rax]
mov rax, qword [r9 + 8]
mov qword [r9], rax
add r9, 8
mov rax, qword [r8 + 8]
mov qword [r8], rax
add r8, 8
add edi, 0xffffffff
jne 0x140029fb0
jmp 0x14002a10b
dec edx
bts rbp, r8
lea r9, [r14 + 0x200]
mov qword [r14], rbp
lea r8, [r14 + 8]
lea r9, [r9 + rdx*8]
lea r8, [r8 + rdx*8]
sub edx, edi
sub edx, 1
je 0x14002a01b
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r8 - 8]
mov qword [r8], rax
add r8, 0xfffffffffffffff8
mov rax, qword [r9 - 8]
mov qword [r9], rax
add r9, 0xfffffffffffffff8
add edx, 0xffffffff
jne 0x14002a000
mov rax, qword [r8 - 8]
movabs r10, 0x5555555555555555
mov qword [r8], rax
mov qword [r8 - 8], r12
mov rax, qword [rsp + 0x78]
mov qword [r9], rax
jmp 0x14002a1ef
mov rcx, r10
lea r9, [r14 + 8]
shr rcx, 0x20
mov r8d, 0x20
neg rcx
shr rcx, 0x20
and ecx, 0x20
shr r10, cl
sub r8, rcx
lea rcx, [r10 - 0x10000]
shr rcx, 0x20
and ecx, 0x10
shl r10, cl
add r8, rcx
lea rcx, [r10 - 0x1000000]
shr rcx, 0x20
and ecx, 8
shl r10, cl
add r8, rcx
lea rcx, [r10 - 0x10000000]
shr rcx, 0x20
and ecx, 4
add r8, rcx
shl r10, cl
lea rcx, [r10 - 0x40000000]
shr rcx, 0x20
and ecx, 2
shl r10, cl
shr r10, 0x1e
mov rax, r10
shr rax, 1
not eax
and eax, r10d
sub ecx, eax
lea eax, [r8 + 2]
add eax, ecx
lea r8, [r14 + 0x200]
xor eax, 0x3f
mov ecx, eax
bts rbp, rcx
mov qword [r14], rbp
lea edx, [rax - 1]
sub edi, edx
lea r8, [r8 + rdx*8]
lea r9, [r9 + rdx*8]
sub edi, 1
je 0x14002a10b
nop word [rax + rax]
mov rax, qword [r9 + 8]
mov qword [r9], rax
add r9, 8
mov rax, qword [r8 + 8]
mov qword [r8], rax
add r8, 8
add edi, 0xffffffff
jne 0x14002a0f0
mov rax, qword [r8 + 8]
movabs r10, 0x5555555555555555
mov qword [r8], rax
mov qword [r9], r12
mov rax, qword [rsp + 0x78]
mov qword [r8 + 8], rax
jmp 0x14002a1ef
movabs r9, 0x3333333333333333
lea rdx, [r10 - 1]
and rdx, rbp
lea r8, [r14 + 0x200]
mov rax, rdx
movabs r10, 0x5555555555555555
shr rax, 1
and rax, r10
sub rdx, rax
mov rcx, rdx
and rdx, r9
shr rcx, 2
and rcx, r9
add rcx, rdx
lea rdx, [r14 + 8]
mov rax, rcx
shr rax, 4
add rax, rcx
movabs rcx, 0xf0f0f0f0f0f0f0f
and rax, rcx
movabs rcx, 0x101010101010101
imul rax, rcx
shr rax, 0x38
mov eax, eax
bts rbp, rax
mov qword [r14], rbp
lea ecx, [rax - 1]
lea r9d, [rcx - 1]
lea r8, [r8 + rcx*8]
lea rdx, [rdx + rcx*8]
test r9d, r9d
je 0x14002a1dc
nop word [rax + rax]
mov rax, qword [rdx - 8]
mov qword [rdx], rax
add rdx, 0xfffffffffffffff8
mov rax, qword [r8 - 8]
mov qword [r8], rax
add r8, 0xfffffffffffffff8
add r9d, 0xffffffff
jne 0x14002a1c0
mov rax, qword [rdx - 8]
mov qword [rdx], rax
mov qword [rdx - 8], r12
mov rax, qword [rsp + 0x78]
mov qword [r8], rax
cmp dword [rsp + 0x98], 1
mov rax, qword [rsp + 0x78]
je 0x14002a882
mov qword [rax], r10
lea r8, [rbx + 0x300]
mov qword [rbx], r10
mov rcx, qword [rsp + 0x78]
mov rax, qword [rbx + 0x108]
mov qword [rcx + 0x10], rax
lea rdx, [rcx + 0x208]
mov rax, qword [r8]
mov qword [rdx], rax
mov rax, qword [rbx + 0x110]
mov qword [rcx + 0x20], rax
mov rax, qword [r8 + 8]
mov qword [rdx + 0x10], rax
mov rax, qword [rbx + 0x118]
mov qword [rcx + 0x30], rax
mov rax, qword [r8 + 0x10]
mov qword [rdx + 0x20], rax
mov rax, qword [rbx + 0x120]
mov qword [rcx + 0x40], rax
mov rax, qword [r8 + 0x18]
mov qword [rdx + 0x30], rax
mov rax, qword [rbx + 0x128]
mov qword [rcx + 0x50], rax
mov rax, qword [r8 + 0x20]
mov qword [rdx + 0x40], rax
mov rax, qword [rbx + 0x130]
mov qword [rcx + 0x60], rax
mov rax, qword [r8 + 0x28]
mov qword [rdx + 0x50], rax
mov rax, qword [rbx + 0x138]
mov qword [rcx + 0x70], rax
mov rax, qword [r8 + 0x30]
mov qword [rdx + 0x60], rax
mov rax, qword [rbx + 0x140]
mov qword [rcx + 0x80], rax
mov rax, qword [r8 + 0x38]
mov qword [rdx + 0x70], rax
mov rax, qword [rbx + 0x148]
mov qword [rcx + 0x90], rax
mov rax, qword [r8 + 0x40]
mov qword [rdx + 0x80], rax
mov rax, qword [rbx + 0x150]
mov qword [rcx + 0xa0], rax
mov rax, qword [r8 + 0x48]
mov qword [rdx + 0x90], rax
mov rax, qword [rbx + 0x158]
mov qword [rcx + 0xb0], rax
mov rax, qword [r8 + 0x50]
mov qword [rdx + 0xa0], rax
mov rax, qword [rbx + 0x160]
mov qword [rcx + 0xc0], rax
mov rax, qword [r8 + 0x58]
mov qword [rdx + 0xb0], rax
mov rax, qword [rbx + 0x168]
mov qword [rcx + 0xd0], rax
mov rax, qword [r8 + 0x60]
mov qword [rdx + 0xc0], rax
mov rax, qword [rbx + 0x170]
mov qword [rcx + 0xe0], rax
mov rax, qword [r8 + 0x68]
mov qword [rdx + 0xd0], rax
mov rax, qword [rbx + 0x178]
mov qword [rcx + 0xf0], rax
mov rax, qword [r8 + 0x70]
mov qword [rdx + 0xe0], rax
mov rax, qword [rbx + 0x180]
mov qword [rcx + 0x100], rax
mov rax, qword [r8 + 0x78]
mov qword [rdx + 0xf0], rax
mov rax, qword [rbx + 0x188]
mov qword [rcx + 0x110], rax
mov rax, qword [r8 + 0x80]
mov qword [rdx + 0x100], rax
mov rax, qword [rbx + 0x190]
mov qword [rcx + 0x120], rax
mov rax, qword [r8 + 0x88]
mov qword [rdx + 0x110], rax
mov rax, qword [rbx + 0x198]
mov qword [rcx + 0x130], rax
mov rax, qword [r8 + 0x90]
mov qword [rdx + 0x120], rax
mov rax, qword [rbx + 0x1a0]
mov qword [rcx + 0x140], rax
mov rax, qword [r8 + 0x98]
mov qword [rdx + 0x130], rax
mov rax, qword [rbx + 0x1a8]
mov qword [rcx + 0x150], rax
mov rax, qword [r8 + 0xa0]
mov qword [rdx + 0x140], rax
mov rax, qword [rbx + 0x1b0]
mov qword [rcx + 0x160], rax
mov rax, qword [r8 + 0xa8]
mov qword [rdx + 0x150], rax
mov rax, qword [rbx + 0x1b8]
mov qword [rcx + 0x170], rax
mov rax, qword [r8 + 0xb0]
mov qword [rdx + 0x160], rax
mov rax, qword [rbx + 0x1c0]
mov qword [rcx + 0x180], rax
mov rax, qword [r8 + 0xb8]
mov qword [rdx + 0x170], rax
mov rax, qword [rbx + 0x1c8]
mov qword [rcx + 0x190], rax
mov rax, qword [r8 + 0xc0]
mov qword [rdx + 0x180], rax
mov rax, qword [rbx + 0x1d0]
mov qword [rcx + 0x1a0], rax
mov rax, qword [r8 + 0xc8]
mov qword [rdx + 0x190], rax
mov rax, qword [rbx + 0x1d8]
mov qword [rcx + 0x1b0], rax
mov rax, qword [r8 + 0xd0]
mov qword [rdx + 0x1a0], rax
mov rax, qword [rbx + 0x1e0]
mov qword [rcx + 0x1c0], rax
mov rax, qword [r8 + 0xd8]
mov qword [rdx + 0x1b0], rax
mov rax, qword [rbx + 0x1e8]
mov qword [rcx + 0x1d0], rax
mov rax, qword [r8 + 0xe0]
mov qword [rdx + 0x1c0], rax
mov rax, qword [rbx + 0x1f0]
mov qword [rcx + 0x1e0], rax
mov rax, qword [r8 + 0xe8]
mov qword [rdx + 0x1d0], rax
mov rax, qword [rbx + 0x1f8]
mov qword [rcx + 0x1f0], rax
mov rax, qword [r8 + 0xf0]
mov qword [rdx + 0x1e0], rax
mov rax, qword [r8 + 0xf8]
mov qword [rdx + 0x1f0], rax
mov rax, qword [rbx + 0x2f8]
mov qword [rbx + 0x3f8], rax
mov rax, qword [rbx + 0xf8]
mov qword [rbx + 0x1f0], rax
mov rax, qword [rbx + 0x2f0]
mov qword [rbx + 0x3e8], rax
mov rax, qword [rbx + 0xf0]
mov qword [rbx + 0x1e0], rax
mov rax, qword [rbx + 0x2e8]
mov qword [rbx + 0x3d8], rax
mov rax, qword [rbx + 0xe8]
mov qword [rbx + 0x1d0], rax
mov rax, qword [rbx + 0x2e0]
mov qword [rbx + 0x3c8], rax
mov rax, qword [rbx + 0xe0]
mov qword [rbx + 0x1c0], rax
mov rax, qword [rbx + 0x2d8]
mov qword [rbx + 0x3b8], rax
mov rax, qword [rbx + 0xd8]
mov qword [rbx + 0x1b0], rax
mov rax, qword [rbx + 0x2d0]
mov qword [rbx + 0x3a8], rax
mov rax, qword [rbx + 0xd0]
mov qword [rbx + 0x1a0], rax
mov rax, qword [rbx + 0x2c8]
mov qword [rbx + 0x398], rax
mov rax, qword [rbx + 0xc8]
mov qword [rbx + 0x190], rax
mov rax, qword [rbx + 0x2c0]
mov qword [rbx + 0x388], rax
mov rax, qword [rbx + 0xc0]
mov qword [rbx + 0x180], rax
mov rax, qword [rbx + 0x2b8]
mov qword [rbx + 0x378], rax
mov rax, qword [rbx + 0xb8]
mov qword [rbx + 0x170], rax
mov rax, qword [rbx + 0x2b0]
mov qword [rbx + 0x368], rax
mov rax, qword [rbx + 0xb0]
mov qword [rbx + 0x160], rax
mov rax, qword [rbx + 0x2a8]
mov qword [rbx + 0x358], rax
mov rax, qword [rbx + 0xa8]
mov qword [rbx + 0x150], rax
mov rax, qword [rbx + 0x2a0]
mov qword [rbx + 0x348], rax
mov rax, qword [rbx + 0xa0]
mov qword [rbx + 0x140], rax
mov rax, qword [rbx + 0x298]
mov qword [rbx + 0x338], rax
mov rax, qword [rbx + 0x98]
mov qword [rbx + 0x130], rax
mov rax, qword [rbx + 0x290]
mov qword [rbx + 0x328], rax
mov rax, qword [rbx + 0x90]
mov qword [rbx + 0x120], rax
mov rax, qword [rbx + 0x288]
mov qword [rbx + 0x318], rax
mov rax, qword [rbx + 0x88]
mov qword [rbx + 0x110], rax
mov rax, qword [rbx + 0x280]
mov qword [rbx + 0x308], rax
mov rax, qword [rbx + 0x80]
mov qword [rbx + 0x100], rax
mov rax, qword [rbx + 0x278]
mov qword [rbx + 0x2f8], rax
mov rax, qword [rbx + 0x78]
mov qword [rbx + 0xf0], rax
mov rax, qword [rbx + 0x270]
mov qword [rbx + 0x2e8], rax
mov rax, qword [rbx + 0x70]
mov qword [rbx + 0xe0], rax
mov rax, qword [rbx + 0x268]
mov qword [rbx + 0x2d8], rax
mov rax, qword [rbx + 0x68]
mov qword [rbx + 0xd0], rax
mov rax, qword [rbx + 0x260]
mov qword [rbx + 0x2c8], rax
mov rax, qword [rbx + 0x60]
mov qword [rbx + 0xc0], rax
mov rax, qword [rbx + 0x258]
mov qword [rbx + 0x2b8], rax
mov rax, qword [rbx + 0x58]
mov qword [rbx + 0xb0], rax
mov rax, qword [rbx + 0x250]
mov qword [rbx + 0x2a8], rax
mov rax, qword [rbx + 0x50]
mov qword [rbx + 0xa0], rax
mov rax, qword [rbx + 0x248]
mov qword [rbx + 0x298], rax
mov rax, qword [rbx + 0x48]
mov qword [rbx + 0x90], rax
mov rax, qword [rbx + 0x240]
mov qword [rbx + 0x288], rax
mov rax, qword [rbx + 0x40]
mov qword [rbx + 0x80], rax
mov rax, qword [rbx + 0x238]
mov qword [rbx + 0x278], rax
mov rax, qword [rbx + 0x38]
mov qword [rbx + 0x70], rax
mov rax, qword [rbx + 0x230]
mov qword [rbx + 0x268], rax
mov rax, qword [rbx + 0x30]
mov qword [rbx + 0x60], rax
mov rax, qword [rbx + 0x228]
mov qword [rbx + 0x258], rax
mov rax, qword [rbx + 0x28]
mov qword [rbx + 0x50], rax
mov rax, qword [rbx + 0x220]
mov qword [rbx + 0x248], rax
mov rax, qword [rbx + 0x20]
mov qword [rbx + 0x40], rax
mov rax, qword [rbx + 0x218]
mov qword [rbx + 0x238], rax
mov rax, qword [rbx + 0x18]
mov qword [rbx + 0x30], rax
mov rax, qword [rbx + 0x210]
mov qword [rbx + 0x228], rax
mov rax, qword [rbx + 0x10]
mov qword [rbx + 0x20], rax
mov rax, qword [rbx + 0x208]
mov qword [rbx + 0x218], rax
mov rax, qword [rbx + 8]
mov qword [rbx + 0x10], rax
mov rax, qword [rbx + 0x200]
mov qword [rbx + 0x208], rax
cmp rsi, r12
jb 0x14002ade7
je 0x14002ade1
mov rcx, qword [rsp + 0x90]
mov rax, qword [rsp + 0x78]
mov qword [rcx], rax
jmp 0x14002ade7
movabs rcx, 0x5555555555555557
mov qword [rax], rcx
lea rax, [rbx + 0x1f8]
mov qword [rbx], r10
mov rdx, qword [rsp + 0x78]
add rdx, 0x1f0
cmp r15d, 0x1f
jae 0x14002aa89
mov rcx, qword [rax]
add rbx, 0x1f0
mov qword [rdx], rcx
mov rcx, qword [rax - 8]
mov qword [rdx - 0x10], rcx
mov rcx, qword [rax - 0x10]
mov qword [rdx - 0x20], rcx
mov rcx, qword [rax - 0x18]
mov qword [rdx - 0x30], rcx
mov rcx, qword [rax - 0x20]
mov qword [rdx - 0x40], rcx
mov rcx, qword [rax - 0x28]
mov qword [rdx - 0x50], rcx
mov rcx, qword [rax - 0x30]
mov qword [rdx - 0x60], rcx
mov rcx, qword [rax - 0x38]
mov qword [rdx - 0x70], rcx
mov rcx, qword [rax - 0x40]
mov qword [rdx - 0x80], rcx
mov rcx, qword [rax - 0x48]
mov qword [rdx - 0x90], rcx
mov rcx, qword [rax - 0x50]
mov qword [rdx - 0xa0], rcx
mov rcx, qword [rax - 0x58]
mov qword [rdx - 0xb0], rcx
mov rcx, qword [rax - 0x60]
mov qword [rdx - 0xc0], rcx
mov rcx, qword [rax - 0x68]
mov qword [rdx - 0xd0], rcx
mov rcx, qword [rax - 0x70]
mov qword [rdx - 0xe0], rcx
mov rcx, qword [rax - 0x78]
mov qword [rdx - 0xf0], rcx
mov rcx, qword [rax - 0x80]
mov qword [rdx - 0x100], rcx
mov rcx, qword [rax - 0x88]
mov qword [rdx - 0x110], rcx
mov rcx, qword [rax - 0x90]
mov qword [rdx - 0x120], rcx
mov rcx, qword [rax - 0x98]
mov qword [rdx - 0x130], rcx
mov rcx, qword [rax - 0xa0]
mov qword [rdx - 0x140], rcx
mov rcx, qword [rax - 0xa8]
mov qword [rdx - 0x150], rcx
mov rcx, qword [rax - 0xb0]
mov qword [rdx - 0x160], rcx
mov rcx, qword [rax - 0xb8]
mov qword [rdx - 0x170], rcx
mov rcx, qword [rax - 0xc0]
mov qword [rdx - 0x180], rcx
mov rcx, qword [rax - 0xc8]
mov qword [rdx - 0x190], rcx
mov rcx, qword [rax - 0xd0]
mov qword [rdx - 0x1a0], rcx
mov rcx, qword [rax - 0xd8]
mov qword [rdx - 0x1b0], rcx
mov rcx, qword [rax - 0xe0]
mov qword [rdx - 0x1c0], rcx
mov rcx, qword [rax - 0xe8]
mov qword [rdx - 0x1d0], rcx
mov rcx, qword [rax - 0xf0]
mov qword [rdx - 0x1e0], rcx
mov rcx, qword [rax - 0xf8]
sub rax, 0x108
mov qword [rdx - 0x1e8], rcx
mov edx, 0x1e
sub edx, r15d
je 0x14002aa53
nop word [rax + rax]
mov rcx, qword [rax]
sub rax, 8
mov qword [rbx], rcx
sub rbx, 0x10
add edx, 0xffffffff
jne 0x14002aa40
mov qword [rbx], rsi
sub rbx, 0x10
test r15d, r15d
je 0x14002ade7
nop dword [rax]
nop word [rax + rax]
mov rcx, qword [rax]
lea rax, [rax - 8]
mov qword [rbx], rcx
lea rbx, [rbx - 0x10]
add r15d, 0xffffffff
jne 0x14002aa70
jmp 0x14002ade7
je 0x14002ab00
mov r8d, 0x3f
sub r8d, r15d
je 0x14002aab4
nop word [rax + rax]
mov rcx, qword [rax]
sub rax, 8
mov qword [rdx], rcx
sub rdx, 0x10
add r8d, 0xffffffff
jne 0x14002aaa0
cmp r15d, 0x20
je 0x14002aaf4
mov qword [rdx], rsi
sub rdx, 0x10
add r15d, 0xffffffdf
je 0x14002aae4
nop word [rax + rax]
mov rcx, qword [rax]
sub rax, 8
mov qword [rdx], rcx
sub rdx, 0x10
add r15d, 0xffffffff
jne 0x14002aad0
mov rcx, qword [rax]
sub rax, 8
mov qword [rdx + 8], rcx
jmp 0x14002ac72
mov qword [rdx + 8], rsi
jmp 0x14002ac72
mov rcx, qword [rax]
mov qword [rdx], rcx
mov rcx, qword [rax - 8]
mov qword [rdx - 0x10], rcx
mov rcx, qword [rax - 0x10]
mov qword [rdx - 0x20], rcx
mov rcx, qword [rax - 0x18]
mov qword [rdx - 0x30], rcx
mov rcx, qword [rax - 0x20]
mov qword [rdx - 0x40], rcx
mov rcx, qword [rax - 0x28]
mov qword [rdx - 0x50], rcx
mov rcx, qword [rax - 0x30]
mov qword [rdx - 0x60], rcx
mov rcx, qword [rax - 0x38]
mov qword [rdx - 0x70], rcx
mov rcx, qword [rax - 0x40]
mov qword [rdx - 0x80], rcx
mov rcx, qword [rax - 0x48]
mov qword [rdx - 0x90], rcx
mov rcx, qword [rax - 0x50]
mov qword [rdx - 0xa0], rcx
mov rcx, qword [rax - 0x58]
mov qword [rdx - 0xb0], rcx
mov rcx, qword [rax - 0x60]
mov qword [rdx - 0xc0], rcx
mov rcx, qword [rax - 0x68]
mov qword [rdx - 0xd0], rcx
mov rcx, qword [rax - 0x70]
mov qword [rdx - 0xe0], rcx
mov rcx, qword [rax - 0x78]
mov qword [rdx - 0xf0], rcx
mov rcx, qword [rax - 0x80]
mov qword [rdx - 0x100], rcx
mov rcx, qword [rax - 0x88]
mov qword [rdx - 0x110], rcx
mov rcx, qword [rax - 0x90]
mov qword [rdx - 0x120], rcx
mov rcx, qword [rax - 0x98]
mov qword [rdx - 0x130], rcx
mov rcx, qword [rax - 0xa0]
mov qword [rdx - 0x140], rcx
mov rcx, qword [rax - 0xa8]
mov qword [rdx - 0x150], rcx
mov rcx, qword [rax - 0xb0]
mov qword [rdx - 0x160], rcx
mov rcx, qword [rax - 0xb8]
mov qword [rdx - 0x170], rcx
mov rcx, qword [rax - 0xc0]
mov qword [rdx - 0x180], rcx
mov rcx, qword [rax - 0xc8]
mov qword [rdx - 0x190], rcx
mov rcx, qword [rax - 0xd0]
mov qword [rdx - 0x1a0], rcx
mov rcx, qword [rax - 0xd8]
mov qword [rdx - 0x1b0], rcx
mov rcx, qword [rax - 0xe0]
mov qword [rdx - 0x1c0], rcx
mov rcx, qword [rax - 0xe8]
mov qword [rdx - 0x1d0], rcx
mov rcx, qword [rax - 0xf0]
sub rax, 0xf8
mov qword [rdx - 0x1e0], rcx
mov rcx, qword [rax]
mov qword [rdx - 0x1e8], rcx
mov rcx, qword [rax - 8]
mov qword [rbx + 0x1f0], rcx
mov rcx, qword [rax - 0x10]
mov qword [rbx + 0x1e0], rcx
mov rcx, qword [rax - 0x18]
mov qword [rbx + 0x1d0], rcx
mov rcx, qword [rax - 0x20]
mov qword [rbx + 0x1c0], rcx
mov rcx, qword [rax - 0x28]
mov qword [rbx + 0x1b0], rcx
mov rcx, qword [rax - 0x30]
mov qword [rbx + 0x1a0], rcx
mov rcx, qword [rax - 0x38]
mov qword [rbx + 0x190], rcx
mov rcx, qword [rax - 0x40]
mov qword [rbx + 0x180], rcx
mov rcx, qword [rax - 0x48]
mov qword [rbx + 0x170], rcx
mov rcx, qword [rax - 0x50]
mov qword [rbx + 0x160], rcx
mov rcx, qword [rax - 0x58]
mov qword [rbx + 0x150], rcx
mov rcx, qword [rax - 0x60]
mov qword [rbx + 0x140], rcx
mov rcx, qword [rax - 0x68]
mov qword [rbx + 0x130], rcx
mov rcx, qword [rax - 0x70]
mov qword [rbx + 0x120], rcx
mov rcx, qword [rax - 0x78]
mov qword [rbx + 0x110], rcx
mov rcx, qword [rax - 0x80]
mov qword [rbx + 0x100], rcx
mov rcx, qword [rax - 0x88]
mov qword [rbx + 0xf0], rcx
mov rcx, qword [rax - 0x90]
mov qword [rbx + 0xe0], rcx
mov rcx, qword [rax - 0x98]
mov qword [rbx + 0xd0], rcx
mov rcx, qword [rax - 0xa0]
mov qword [rbx + 0xc0], rcx
mov rcx, qword [rax - 0xa8]
mov qword [rbx + 0xb0], rcx
mov rcx, qword [rax - 0xb0]
mov qword [rbx + 0xa0], rcx
mov rcx, qword [rax - 0xb8]
mov qword [rbx + 0x90], rcx
mov rcx, qword [rax - 0xc0]
mov qword [rbx + 0x80], rcx
mov rcx, qword [rax - 0xc8]
mov qword [rbx + 0x70], rcx
mov rcx, qword [rax - 0xd0]
mov qword [rbx + 0x60], rcx
mov rcx, qword [rax - 0xd8]
mov qword [rbx + 0x50], rcx
mov rcx, qword [rax - 0xe0]
mov qword [rbx + 0x40], rcx
mov rcx, qword [rax - 0xe8]
mov qword [rbx + 0x30], rcx
mov rcx, qword [rax - 0xf0]
mov qword [rbx + 0x20], rcx
mov rcx, qword [rax - 0xf8]
mov qword [rbx + 0x10], rcx
jmp 0x14002ade7
mov r11d, 1
mov rbx, qword [rsp + 0x80]
mov eax, r11d
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret