Function at 0x140109be0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2b8
mov rsi, rcx
mov rax, qword [0x14023e038]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
mov dword [rsp + 0x1fc], 0xaaaaaaaa
mov rbx, qword [rdx]
mov eax, 0xffffffff
movabs r14, 0x7fffffffffffffff
cmp rbx, r14
je 0x140109c8d
mov rax, qword [rdx + 8]
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x260], rcx
test rax, rax
je 0x14010adce
mov qword [rsp + 0x260], rax
xor ecx, ecx
cmp rbx, rax
setns cl
add rcx, r14
sub rbx, rax
cmovo rbx, rcx
mov qword [rsp + 0x218], rbx
lea rcx, [rsp + 0x218]
call fcn.14010d210
xor ecx, ecx
test rax, rax
setns dl
mov r8, rax
shr r8, 0x20
jne 0x14010ade6
movabs r12, 0xfffffffc00000000
mov dword [rsp + 0x1fc], eax
lea rcx, [rsp + 0x1fc]
call fcn.1400e5750
mov eax, dword [rsp + 0x1fc]
lea rdx, [rsp + 0x210]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x200], xmm0
mov qword [rsp + 0x210], 0
mov qword [rsp + 0x260], 0
mov qword [rsp + 0x218], 0
mov rcx, qword [rsi + 0x18]
mov dword [rsp + 0x20], eax
lea r8, [rsp + 0x260]
lea r9, [rsp + 0x218]
call qword [sym.imp.KERNEL32.dll_GetQueuedCompletionStatus]
test eax, eax
je 0x140109f60
mov rdi, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x200]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14024e1c8]
je 0x14010b0a9
mov rax, rdi
and rax, r12
cmp rax, qword [0x14024e1c8]
jne 0x140109d49
mov rcx, rdi
call fcn.1400e7ce0
mov qword [rsp + 0x200], rdi
mov rdi, qword [rsp + 0x218]
mov rcx, qword [rsp + 0x208]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14024e1c8]
je 0x14010b0b3
mov rax, rdi
and rax, r12
cmp rax, qword [0x14024e1c8]
jne 0x140109d8b
mov rcx, rdi
call fcn.1400e7ce0
mov qword [rsp + 0x208], rdi
cmp rdi, rsi
jne 0x140109da6
cmp qword [rsp + 0x200], rsi
je 0x14010a901
mov rax, qword [rsi + 0x10]
mov rsi, qword [rax]
mov rax, qword [rsi]
mov rax, qword [rax + 0x28]
mov rcx, rsi
call qword [case.0x1401bb600.0]
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
mov rcx, rsi
call qword [case.0x1401bb600.0]
mov dword [rsp + 0x6c], eax
mov r8, qword [0x140256990]
test r8, r8
je 0x14010afef
test byte [r8], 0x19
jne 0x140109f88
mov rbx, qword [rsp + 0x200]
mov rdi, rbx
and rdi, r12
mov rcx, rbx
cmp rdi, qword [0x14024e1c8]
jne 0x140109e15
mov rcx, rbx
call fcn.1400e7ce0
mov rcx, qword [rsp + 0x200]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14024e1c8]
jne 0x140109e29
call fcn.1400e7e30
mov qword [rsp + 0x200], 0
mov ebp, dword [rsp + 0x214]
mov r15d, dword [rsp + 0x210]
mov r14, qword [rsp + 0x208]
mov r13, r14
and r13, r12
mov rcx, r14
cmp r13, qword [0x14024e1c8]
jne 0x140109e6e
mov rcx, r14
call fcn.1400e7ce0
mov rcx, qword [rsp + 0x208]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14024e1c8]
jne 0x140109e82
call fcn.1400e7e30
mov qword [rsp + 0x208], 0
mov rax, qword [rbx]
mov rax, qword [rax + 8]
mov rcx, rbx
mov rdx, r14
mov r8d, r15d
mov r9d, ebp
call qword [case.0x1401bb600.0]
cmp r13, qword [0x14024e1c8]
jne 0x140109eb8
mov rcx, r14
call fcn.1400e81c0
cmp rdi, qword [0x14024e1c8]
jne 0x140109ec9
mov rcx, rbx
call fcn.1400e81c0
mov r8, qword [0x140256998]
test r8, r8
je 0x14010b00a
test byte [r8], 0x19
jne 0x14010a82d
test rsi, rsi
je 0x140109efc
mov rax, qword [rsi]
mov rax, qword [rax + 0x30]
mov rcx, rsi
mov edx, dword [rsp + 0x6c]
call qword [case.0x1401bb600.0]
mov rcx, qword [rsp + 0x208]
mov rax, rcx
and rax, r12
cmp rax, qword [0x14024e1c8]
je 0x14010a915
mov qword [rsp + 0x208], 0
mov rcx, qword [rsp + 0x200]
and r12, rcx
cmp r12, qword [0x14024e1c8]
je 0x14010a90b
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.1401513b0
nop
add rsp, 0x2b8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rsp + 0x218], 0
je 0x140109efc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x214], eax
mov dword [rsp + 0x210], 0
jmp 0x140109d0f
movaps xmm0, xmmword [0x140215460]
lea rbx, [rsp + 0x240]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
mov rax, qword [0x140222dd0]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x20], 0
lea r9, str.IOHandler::OnIOCompleted
mov rcx, rbx
mov dl, 0x42
call fcn.140103050
mov rax, qword [rbx]
test rax, rax
je 0x14010ab76
mov cl, byte [rsp + 0x258]
mov rdx, qword [rsp + 0x248]
mov qword [rsp + 0x220], rax
mov qword [rsp + 0x228], rdx
xor eax, eax
mov qword [rsp + 0x230], rax
mov byte [rsp + 0x238], cl
mov qword [rsp + 0x260], rax
mov qword [rsp + 0x218], rax
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x268], rax
mov rax, qword [rsp + 0x228]
mov qword [rsp + 0x270], rax
mov eax, dword [rsp + 0x229]
mov dword [rsp + 0x271], eax
movzx eax, word [rsp + 0x22d]
mov word [rsp + 0x275], ax
mov al, byte [rsp + 0x22f]
mov byte [rsp + 0x277], al
mov rax, qword [rsp + 0x230]
mov qword [rsp + 0x278], rax
mov al, byte [rsp + 0x238]
mov byte [rsp + 0x280], al
mov rcx, qword [rsp + 0x268]
mov edx, 0x23
call fcn.1400e8c00
mov r8, qword [rsp + 0x200]
mov rdx, qword [r8 + 8]
mov qword [rsp + 0x288], rdx
mov rcx, qword [r8 + 0x10]
mov qword [rsp + 0x290], rcx
mov r8d, dword [r8 + 0x18]
mov dword [rsp + 0x298], r8d
mov rdi, qword [rsp + 0x270]
lea r14, [rdi + 0xb8]
mov r10, qword [rdi + 0xb8]
cmp r10, 4
mov qword [rsp + 0x60], rax
je 0x14010a93b
lea r13, [rdi + 0xc8]
mov rbp, qword [rdi + 0xc8]
cmp rbp, 4
je 0x14010a91f
lea r9, [rdi + 0xd8]
mov r15, qword [rdi + 0xd8]
cmp r15, 4
je 0x14010a924
lea r8, [rdi + 0xe8]
mov rax, qword [rdi + 0xe8]
cmp rax, 4
je 0x14010a929
lea r11, [rdi + 0xf8]
mov rbx, qword [rdi + 0xf8]
cmp rbx, 4
je 0x14010abd4
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rdx
lea rcx, [rdi + 0x108]
mov r11, qword [rdi + 0x108]
cmp r11, 4
je 0x14010abdc
mov qword [rsp + 0x58], rcx
lea rdx, [rdi + 0x118]
mov rcx, qword [rdi + 0x118]
mov qword [rsp + 0x48], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x1f0], rdx
lea rdx, [rdi + 0x128]
mov qword [rsp + 0xf0], rdx
mov rcx, qword [rdi + 0x128]
cmp rcx, 4
je 0x14010adb6
mov qword [rsp + 0x1e8], rcx
lea rdx, [rdi + 0x138]
mov rcx, qword [rdi + 0x138]
mov qword [rsp + 0x1e0], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x1d8], rdx
lea rdx, [rdi + 0x148]
mov qword [rsp + 0xe8], rdx
mov rcx, qword [rdi + 0x148]
cmp rcx, 4
je 0x14010ae05
mov qword [rsp + 0x1d0], rcx
lea rdx, [rdi + 0x158]
mov rcx, qword [rdi + 0x158]
mov qword [rsp + 0x1c8], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x1c0], rdx
lea rdx, [rdi + 0x168]
mov qword [rsp + 0xe0], rdx
mov rcx, qword [rdi + 0x168]
cmp rcx, 4
je 0x14010af6c
mov qword [rsp + 0x1b8], rcx
lea rdx, [rdi + 0x178]
mov rcx, qword [rdi + 0x178]
mov qword [rsp + 0x1b0], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x1a8], rdx
lea rdx, [rdi + 0x188]
mov qword [rsp + 0xd8], rdx
mov rcx, qword [rdi + 0x188]
cmp rcx, 4
je 0x14010af8c
mov qword [rsp + 0x1a0], rcx
lea rdx, [rdi + 0x198]
mov rcx, qword [rdi + 0x198]
mov qword [rsp + 0x198], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x190], rdx
lea rdx, [rdi + 0x1a8]
mov qword [rsp + 0xd0], rdx
mov rcx, qword [rdi + 0x1a8]
cmp rcx, 4
je 0x14010afa6
mov qword [rsp + 0x188], rcx
lea rdx, [rdi + 0x1b8]
mov rcx, qword [rdi + 0x1b8]
mov qword [rsp + 0x180], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x178], rdx
lea rdx, [rdi + 0x1c8]
mov qword [rsp + 0xc8], rdx
mov rcx, qword [rdi + 0x1c8]
cmp rcx, 4
je 0x14010afb3
mov qword [rsp + 0x170], rcx
lea rdx, [rdi + 0x1d8]
mov rcx, qword [rdi + 0x1d8]
mov qword [rsp + 0x168], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x160], rdx
lea rdx, [rdi + 0x1e8]
mov qword [rsp + 0xc0], rdx
mov rcx, qword [rdi + 0x1e8]
cmp rcx, 4
je 0x14010afe2
mov qword [rsp + 0x158], rcx
lea rdx, [rdi + 0x1f8]
mov rcx, qword [rdi + 0x1f8]
mov qword [rsp + 0x150], rcx
cmp rcx, 4
je 0x14010a92e
mov qword [rsp + 0x148], rdx
lea rdx, [rdi + 0x208]
mov qword [rsp + 0xb8], rdx
mov rcx, qword [rdi + 0x208]
cmp rcx, 4
je 0x14010b025
lea rdx, [rdi + 0x218]
mov qword [rsp + 0xb0], rdx
mov rdx, qword [rdi + 0x218]
mov qword [rsp + 0x140], rdx
cmp rdx, 4
je 0x14010b032
lea rdx, [rdi + 0x228]
mov qword [rsp + 0xa8], rdx
mov rdx, qword [rdi + 0x228]
mov qword [rsp + 0x138], rdx
cmp rdx, 4
je 0x14010b03f
lea rdx, [rdi + 0x238]
mov qword [rsp + 0xa0], rdx
mov rdx, qword [rdi + 0x238]
mov qword [rsp + 0x130], rdx
cmp rdx, 4
je 0x14010b04c
lea rdx, [rdi + 0x248]
mov qword [rsp + 0x98], rdx
mov rdx, qword [rdi + 0x248]
mov qword [rsp + 0x128], rdx
cmp rdx, 4
je 0x14010b059
lea rdx, [rdi + 0x258]
mov qword [rsp + 0x90], rdx
mov rdx, qword [rdi + 0x258]
mov qword [rsp + 0x120], rdx
cmp rdx, 4
je 0x14010b066
lea rdx, [rdi + 0x268]
mov qword [rsp + 0x88], rdx
mov rdx, qword [rdi + 0x268]
mov qword [rsp + 0x118], rdx
cmp rdx, 4
je 0x14010b073
lea rdx, [rdi + 0x278]
mov qword [rsp + 0x80], rdx
mov rdx, qword [rdi + 0x278]
mov qword [rsp + 0x110], rdx
cmp rdx, 4
je 0x14010b080
lea rdx, [rdi + 0x288]
mov qword [rsp + 0x78], rdx
mov rdx, qword [rdi + 0x288]
mov qword [rsp + 0x108], rdx
cmp rdx, 4
je 0x14010b08d
lea rdx, [rdi + 0x298]
mov qword [rsp + 0x70], rdx
mov rdx, qword [rdi + 0x298]
mov qword [rsp + 0x100], rdx
cmp rdx, 4
je 0x14010b097
mov rdx, qword [rdi + reloc.SHELL32.dll_IsUserAnAdmin]
add rdi, reloc.SHELL32.dll_IsUserAnAdmin
mov qword [rsp + 0xf8], rdx
cmp rdx, 4
je 0x14010b0a1
test r10, r10
je 0x14010a7d4
mov r14, r13
test rbp, rbp
je 0x14010a7d4
mov r14, r9
test r15, r15
je 0x14010a7d4
mov r14, r8
test rax, rax
je 0x14010a7d4
mov r14, qword [rsp + 0x50]
test rbx, rbx
je 0x14010a7d4
mov r14, qword [rsp + 0x58]
test r11, r11
je 0x14010a7d4
mov r14, qword [rsp + 0x1f0]
cmp qword [rsp + 0x48], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xf0]
cmp qword [rsp + 0x1e8], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x1d8]
cmp qword [rsp + 0x1e0], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xe8]
cmp qword [rsp + 0x1d0], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x1c0]
cmp qword [rsp + 0x1c8], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xe0]
cmp qword [rsp + 0x1b8], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x1a8]
cmp qword [rsp + 0x1b0], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xd8]
cmp qword [rsp + 0x1a0], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x190]
cmp qword [rsp + 0x198], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xd0]
cmp qword [rsp + 0x188], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x178]
cmp qword [rsp + 0x180], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xc8]
cmp qword [rsp + 0x170], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x160]
cmp qword [rsp + 0x168], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xc0]
cmp qword [rsp + 0x158], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x148]
cmp qword [rsp + 0x150], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xb8]
test rcx, rcx
je 0x14010a7d4
mov r14, qword [rsp + 0xb0]
cmp qword [rsp + 0x140], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xa8]
cmp qword [rsp + 0x138], 0
je 0x14010a7d4
mov r14, qword [rsp + 0xa0]
cmp qword [rsp + 0x130], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x98]
cmp qword [rsp + 0x128], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x90]
cmp qword [rsp + 0x120], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x88]
cmp qword [rsp + 0x118], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x80]
cmp qword [rsp + 0x110], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x78]
cmp qword [rsp + 0x108], 0
je 0x14010a7d4
mov r14, qword [rsp + 0x70]
cmp qword [rsp + 0x100], 0
je 0x14010a7d4
mov r14, rdi
cmp qword [rsp + 0xf8], 0
jne 0x14010b217
mov qword [r14], 4
lea rbx, [r14 + 8]
mov ecx, 0x30
call fcn.1401507f0
xorps xmm0, xmm0
movups xmmword [rax + 8], xmm0
movups xmmword [rax + 0x18], xmm0
mov qword [rax + 0x28], 0
mov dword [rax + 0x28], 0x3f800000
lea rcx, [0x140212b90]
mov qword [rax], rcx
mov rcx, qword [r14 + 8]
mov qword [r14 + 8], rax
test rcx, rcx
jne 0x14010b201
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
jmp 0x14010a942
movaps xmm0, xmmword [0x140215460]
lea rbx, [rsp + 0x240]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
mov rax, qword [0x140222dd0]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x20], 0
lea r9, [0x1402165d6]
mov rcx, rbx
mov dl, 0x45
call fcn.140103050
mov rax, qword [rbx]
test rax, rax
je 0x14010b0bd
lea rbx, [rsp + 0x240]
mov cl, byte [rbx + 0x18]
mov rdx, qword [rbx + 8]
lea r14, [rsp + 0x218]
mov qword [r14 + 8], rax
mov qword [r14 + 0x10], rdx
xor eax, eax
mov qword [r14 + 0x18], rax
mov byte [r14 + 0x20], cl
lea rcx, [rsp + 0x260]
mov qword [rcx], rax
mov qword [r14], rax
mov rax, qword [r14 + 8]
mov qword [rcx + 8], rax
mov rax, qword [r14 + 0x10]
mov qword [rcx + 0x10], rax
mov eax, dword [r14 + 0x11]
mov dword [rcx + 0x11], eax
movzx eax, word [r14 + 0x15]
mov word [rcx + 0x15], ax
mov al, byte [r14 + 0x17]
mov byte [rcx + 0x17], al
mov rax, qword [r14 + 0x18]
mov qword [rcx + 0x18], rax
mov al, byte [r14 + 0x20]
mov byte [rcx + 0x20], al
call fcn.1400e9e90
mov rcx, r14
call fcn.1400e9e90
mov rcx, rbx
call fcn.140103030
jmp 0x140109ee3
xor eax, eax
xchg byte [rsi + 8], al
jmp 0x140109efc
call fcn.1400e7e30
jmp 0x140109f3b
call fcn.1400e7e30
jmp 0x140109f17
mov r14, r13
jmp 0x14010a93b
mov r14, r9
jmp 0x14010a93b
mov r14, r8
jmp 0x14010a93b
mov r14, rdx
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
add r14, 8
mov rbx, r14
mov rdi, qword [rbx]
lea rax, [rdi + 8]
mov qword [rsp + 0x40], rax
mov rax, qword [rdi + 0x20]
mov qword [rsp + 0x50], rax
mov r15d, dword [rsp + 0x298]
mov eax, dword [rsp + 0x29c]
mov dword [rsp + 0x58], eax
movsxd rbx, r15d
mov r14, rcx
mov r13, rdx
call fcn.14011bbd0
mov rcx, rax
mov rdx, rbx
call fcn.14011bbd0
mov rbx, rax
mov qword [rsp + 0x38], rdi
mov rdi, qword [rdi + 0x10]
test rdi, rdi
je 0x14010adf1
mov rax, rdi
shr rax, 1
movabs rcx, 0x5555555555555555
and rcx, rax
mov rax, rdi
sub rax, rcx
movabs rcx, 0x3333333333333333
mov rdx, rax
and rdx, rcx
shr rax, 2
and rax, rcx
add rax, rdx
mov rcx, rax
shr rcx, 4
add rcx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rax, rcx
movabs rcx, 0x101010101010101
imul rcx, rax
shr rcx, 0x38
cmp rcx, 1
jbe 0x14010abae
mov rbp, rbx
cmp rbx, rdi
mov r10, r13
mov r11, r14
jb 0x14010aa17
mov rax, rbx
xor edx, edx
div rdi
mov rbp, rdx
mov rax, qword [rsp + 0x40]
mov rax, qword [rax]
mov rax, qword [rax + rbp*8]
test rax, rax
je 0x14010aa78
mov r8, qword [rax]
test r8, r8
je 0x14010aa78
lea r9, [rdi - 1]
mov rax, qword [r8 + 8]
cmp rax, rbx
jne 0x14010aa5d
cmp qword [r8 + 0x18], r11
jne 0x14010aa53
cmp qword [r8 + 0x10], r10
jne 0x14010aa53
cmp dword [r8 + 0x20], r15d
je 0x14010aadc
mov r8, qword [r8]
test r8, r8
jne 0x14010aa34
jmp 0x14010aa78
cmp ecx, 1
jbe 0x14010abf6
cmp rax, rdi
jb 0x14010aa73
xor edx, edx
div rdi
mov rax, rdx
cmp rax, rbp
je 0x14010aa3d
mov qword [rsp + 0x48], rbx
mov rbx, qword [rsp + 0x50]
inc rbx
mov ecx, 0x30
call fcn.1401507f0
mov r9, rax
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], r14
mov r14, rbx
mov dword [rax + 0x20], r15d
mov eax, dword [rsp + 0x58]
mov dword [r9 + 0x24], eax
mov qword [r9 + 0x28], rbx
mov rbx, qword [rsp + 0x48]
mov qword [r9 + 8], rbx
mov qword [r9], 0
mov r8, qword [rsp + 0x38]
mov rax, qword [r8 + 0x20]
inc rax
js 0x14010abfe
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
jmp 0x14010ac16
mov r14, qword [r8 + 0x28]
mov r15, qword [rsp + 0x60]
cmp qword [r15 + 0x10], 0
jne 0x14010afc0
movabs rcx, 0xaaaaaaaaaaaaaaaa
lea rax, [rsp + 0x2a1]
mov qword [rax - 1], rcx
mov qword [rax + 6], rcx
mov byte [rax - 1], reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x2a0]
cmp r14, 0x80
jae 0x14010ab88
mov rdi, rcx
mov byte [rax], r14b
sub rdi, rcx
add rdi, 2
mov rbx, qword [r15]
mov r8d, edi
mov rcx, qword [rbx + 0x18]
lea r14, [rcx + r8]
cmp r14, qword [rbx + 0x10]
ja 0x14010afcd
cmp edi, 2
jne 0x14010abc0
movzx eax, word [rsp + 0x2a0]
mov word [rcx], ax
mov qword [rbx + 0x18], r14
add dword [r15 + 0x20], edi
lea rcx, [rsp + 0x260]
call fcn.1400e9e90
lea rcx, [rsp + 0x218]
call fcn.1400e9e90
lea rcx, [rsp + 0x240]
call fcn.140103030
jmp 0x140109deb
mov rdx, r14
mov r8d, edx
or r8b, 0x80
mov byte [rax], r8b
shr r14, 7
inc rax
cmp rdx, 0x3fff
ja 0x14010ab88
lea rdi, [rax - 1]
jmp 0x14010ab22
lea rbp, [rdi - 1]
and rbp, rbx
mov r10, r13
mov r11, r14
jmp 0x14010aa17
cmp edi, 3
jne 0x14010abe4
mov al, byte [rsp + 0x2a2]
mov byte [rcx + 2], al
jmp 0x14010ab49
mov r14, r11
jmp 0x14010a93b
mov r14, rcx
jmp 0x14010a931
lea rdx, [rsp + 0x2a0]
call fcn.140153c90
jmp 0x14010ab54
and rax, r9
jmp 0x14010aa73
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov r15, qword [rsp + 0x60]
mov rcx, rdi
shr rcx, 1
mov eax, edi
and eax, 1
or rax, rcx
test rdi, rdi
js 0x14010ac35
cvtsi2ss xmm1, rdi
jmp 0x14010ac3e
cvtsi2ss xmm1, rax
addss xmm1, xmm1
movss xmm2, dword [r8 + 0x28]
je 0x14010acd9
mulss xmm1, xmm2
ucomiss xmm0, xmm1
ja 0x14010acd9
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov rax, qword [rcx + rbp*8]
test rax, rax
jne 0x14010adc3
lea rax, [r8 + 0x18]
mov rdx, qword [r8 + 0x18]
mov qword [r9], rdx
mov qword [r8 + 0x18], r9
mov qword [rcx + rbp*8], rax
mov rax, qword [r9]
test rax, rax
je 0x14010acb4
mov rax, qword [rax + 8]
lea rcx, [rdi - 1]
test rdi, rcx
je 0x14010af99
cmp rax, rdi
mov rcx, qword [rsp + 0x40]
jb 0x14010acaa
xor edx, edx
div rdi
mov rax, rdx
shl rax, 3
add rax, qword [rcx]
mov qword [rax], r9
inc qword [r8 + 0x20]
mov rcx, qword [rsp + 0x270]
sub rcx, 0xffffffffffffff80
lea r8, [rsp + 0x288]
mov rdx, r14
call fcn.140125740
jmp 0x14010aae5
mov qword [rsp + 0x50], r9
divss xmm0, xmm2
call fcn.14016fe8c
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x140204128]
sar rdx, 0x3f
cvttss2si rax, xmm0
and rax, rdx
or rax, rcx
lea rcx, [rdi + rdi]
mov r13d, 1
cmp rdi, 3
jae 0x14010af79
or r13, rcx
cmp r13, rax
cmovbe r13, rax
cmp r13, 1
mov rbp, qword [rsp + 0x40]
jne 0x14010ae12
mov r13d, 2
cmp rdi, 2
jae 0x14010b0d2
lea rcx, [r13*8]
call fcn.1401507f0
mov rcx, qword [rbp]
mov qword [rbp], rax
test rcx, rcx
je 0x14010ad62
call fcn.14015082c
mov rax, qword [rsp + 0x38]
mov qword [rax + 0x10], r13
xor eax, eax
mov rcx, qword [rbp]
mov qword [rcx + rax*8], 0
inc rax
cmp r13, rax
jne 0x14010ad6d
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x18]
test r8, r8
jne 0x14010ae68
mov r8, qword [rsp + 0x38]
mov rdi, qword [r8 + 0x10]
lea rbp, [rdi - 1]
test rdi, rbp
jne 0x14010ae4a
and rbp, rbx
mov r9, qword [rsp + 0x50]
jmp 0x14010ac57
mov r14, qword [rsp + 0xf0]
jmp 0x14010a931
mov rcx, qword [rax]
mov qword [r9], rcx
jmp 0x14010acb1
lea rdi, [rsp + 0x260]
mov rcx, rdi
call fcn.14010d280
mov rax, qword [rdi]
jmp 0x140109c51
mov cl, dl
neg ecx
mov eax, ecx
jmp 0x140109c8d
mov qword [rsp + 0x48], rbx
movabs rbp, 0xaaaaaaaaaaaaaaaa
jmp 0x14010aa7d
mov r14, qword [rsp + 0xe8]
jmp 0x14010a931
lea rax, [r13 - 1]
test r13, rax
je 0x14010ae2f
mov rcx, r13
call fcn.1400ff960
mov r13, rax
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x10]
cmp r13, rdi
jbe 0x14010b0d2
mov rax, r13
shr rax, 0x3d
je 0x14010ad43
call fcn.14018f1b0
cmp rbx, rdi
mov r9, qword [rsp + 0x50]
jb 0x14010b0f3
mov rax, rbx
xor edx, edx
div rdi
mov rbp, rdx
jmp 0x14010ac57
mov rax, qword [rsp + 0x38]
lea r10, [rax + 0x18]
mov rcx, qword [r8 + 8]
mov rax, r13
shr rax, 1
movabs rdx, 0x5555555555555555
and rdx, rax
mov rax, r13
sub rax, rdx
movabs rdx, 0x3333333333333333
mov r9, rax
and r9, rdx
shr rax, 2
and rax, rdx
add rax, r9
mov rdx, rax
shr rdx, 4
add rdx, rax
movabs rax, 0xf0f0f0f0f0f0f0f
and rax, rdx
movabs r9, 0x101010101010101
imul r9, rax
shr r9, 0x38
cmp r9, 1
jbe 0x14010b0fb
cmp rcx, r13
jb 0x14010aeeb
mov rax, rcx
xor edx, edx
div r13
mov rcx, rdx
mov rax, qword [rbp]
mov qword [rax + rcx*8], r10
mov r10, qword [r8]
test r10, r10
je 0x14010ad93
lea r11, [r13 - 1]
mov rax, qword [r10 + 8]
cmp r9d, 1
jbe 0x14010b0ca
cmp rax, r13
jb 0x14010af1e
xor edx, edx
div r13
mov rax, rdx
cmp rax, rcx
je 0x14010af67
mov rdx, qword [rbp]
cmp qword [rdx + rax*8], 0
jne 0x14010af45
mov qword [rdx + rax*8], r8
mov r8, r10
mov r10, qword [r10]
mov rcx, rax
test r10, r10
jne 0x14010af03
jmp 0x14010ad93
mov rdx, qword [r10]
mov qword [r8], rdx
mov rdx, qword [rbp]
mov rdx, qword [rdx + rax*8]
mov rdx, qword [rdx]
mov qword [r10], rdx
mov rdx, qword [rbp]
mov rax, qword [rdx + rax*8]
mov qword [rax], r10
mov r10, r8
mov rax, rcx
jmp 0x14010af32
mov r14, qword [rsp + 0xe0]
jmp 0x14010a931
lea rdx, [rdi - 1]
xor r13d, r13d
test rdi, rdx
setne r13b
jmp 0x14010ad1a
mov r14, qword [rsp + 0xd8]
jmp 0x14010a931
and rax, rcx
mov rcx, qword [rsp + 0x40]
jmp 0x14010acaa
mov r14, qword [rsp + 0xd0]
jmp 0x14010a931
mov r14, qword [rsp + 0xc8]
jmp 0x14010a931
mov rcx, r15
call fcn.1400e89a0
jmp 0x14010aaf0
lea rdx, [rsp + 0x2a0]
mov rcx, rbx
call fcn.1400e9530
jmp 0x14010ab58
mov r14, qword [rsp + 0xc0]
jmp 0x14010a931
lea rcx, str.base_toplevel
call fcn.1401033a0
mov r8, rax
mov qword [0x140256990], rax
jmp 0x140109de1
lea rcx, str.base_toplevel
call fcn.1401033a0
mov r8, rax
mov qword [0x140256998], rax
jmp 0x140109ed9
mov r14, qword [rsp + 0xb8]
jmp 0x14010a931
mov r14, qword [rsp + 0xb0]
jmp 0x14010a931
mov r14, qword [rsp + 0xa8]
jmp 0x14010a931
mov r14, qword [rsp + 0xa0]
jmp 0x14010a931
mov r14, qword [rsp + 0x98]
jmp 0x14010a931
mov r14, qword [rsp + 0x90]
jmp 0x14010a931
mov r14, qword [rsp + 0x88]
jmp 0x14010a931
mov r14, qword [rsp + 0x80]
jmp 0x14010a931
mov r14, qword [rsp + 0x78]
jmp 0x14010a931
mov r14, qword [rsp + 0x70]
jmp 0x14010a931
mov r14, rdi
jmp 0x14010a931
call fcn.1400e7e30
jmp 0x140109d32
call fcn.1400e7e30
jmp 0x140109d74
lea rcx, [rsp + 0x240]
jmp 0x14010a8f7
and rax, r11
jmp 0x14010af1e
cmp r13, rdi
jae 0x14010ad93
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x20]
test rax, rax
js 0x14010b107
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
jmp 0x14010b11f
mov rbp, rbx
jmp 0x14010ac57
lea rax, [r13 - 1]
and rcx, rax
jmp 0x14010aeeb
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rax, qword [rsp + 0x38]
divss xmm0, dword [rax + 0x28]
call fcn.14016fe8c
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x140204128]
cvttss2si rax, xmm0
sar rdx, 0x3f
and rax, rdx
or rax, rcx
cmp rdi, 3
jb 0x14010b1d7
mov rcx, rdi
shr rcx, 1
movabs rdx, 0x5555555555555555
and rdx, rcx
mov rcx, rdi
sub rcx, rdx
movabs rdx, 0x3333333333333333
mov r8, rcx
shr r8, 2
and rcx, rdx
and r8, rdx
add r8, rcx
mov rcx, r8
shr rcx, 4
add rcx, r8
movabs rdx, 0xf0f0f0f0f0f0f0f
and rdx, rcx
movabs rcx, 0x101010101010101
imul rcx, rdx
shr rcx, 0x38
cmp ecx, 1
ja 0x14010b1d7
lea rcx, [rax - 1]
bsr rcx, rcx
xor ecx, 0x3f
neg cl
mov edx, 1
shl rdx, cl
cmp rax, 2
cmovb rdx, rax
jmp 0x14010b1e2
mov rcx, rax
call fcn.1400ff960
mov rdx, rax
cmp r13, rdx
cmova rdx, r13
cmp rdx, rdi
mov rcx, qword [rsp + 0x40]
jae 0x14010ad93
call fcn.1400a4980
jmp 0x14010ad93
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [case.0x1401bb600.0]
jmp 0x14010a81e
call fcn.140167eb0
mov ecx, dword [rax]
call fcn.140178e14
mov rsi, rax
call fcn.140167eb0
mov edi, dword [rax]
lea rcx, str....._third_partyperfettoincludeperfetto_tracing_track_event_interned_data_index.h
call fcn.140191bf0
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], edi
lea rcx, str.PERFETTO_CHECK_false_
mov qword [rsp + 0x20], rcx
lea r9, str._s__errno:__d___s_
mov ecx, 3
mov rdx, rax
mov r8d, 0xf6
call fcn.140191fa0
int3