Function at 0x14018f6e0
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 [0x1402ef038]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
movabs r14, 0x7fffffffffffffff
mov dword [rsp + 0x1fc], 0xaaaaaaaa
mov rdi, qword [rdx]
mov eax, 0xffffffff
cmp rdi, r14
je 0x14018f7b7
mov rax, qword [rdx + 8]
movabs rcx, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x260], rcx
test rax, rax
je 0x140190664
xor ecx, ecx
cmp rdi, rax
setns cl
add rcx, r14
sub rdi, rax
cmovo rdi, rcx
lea rax, [r14 + rdi]
add rax, 2
cmp rax, 2
jb 0x14018f7a0
movabs rcx, 0x20c49ba5e353f7cf
mov rax, rdi
imul rcx
mov rax, rdx
shr rax, 0x3f
sar rdx, 7
add rdx, rax
imul rax, rdx, 0x3e8
xor ecx, ecx
cmp rdi, rax
setg cl
add rcx, rdx
mov rdi, rcx
xor eax, eax
test rdi, rdi
setns cl
mov rdx, rdi
shr rdx, 0x20
jne 0x140190659
mov eax, edi
movabs r12, 0xfffffffc00000000
mov dword [rsp + 0x1fc], eax
lea rcx, [rsp + 0x1fc]
call fcn.140161160
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 0x14018fb51
mov rdi, qword [rsp + 0x260]
mov rcx, qword [rsp + 0x200]
mov rax, rcx
and rax, r12
cmp rax, qword [0x1402efec8]
je 0x140190cfe
mov rax, rdi
and rax, r12
cmp rax, qword [0x1402efec8]
jne 0x14018f873
mov rcx, rdi
call fcn.14016baa0
mov qword [rsp + 0x200], rdi
mov rdi, qword [rsp + 0x218]
mov rcx, qword [rsp + 0x208]
mov rax, rcx
and rax, r12
cmp rax, qword [0x1402efec8]
je 0x140190d08
mov rax, rdi
and rax, r12
cmp rax, qword [0x1402efec8]
jne 0x14018f8b5
mov rcx, rdi
call fcn.14016baa0
mov qword [rsp + 0x208], rdi
cmp rdi, rsi
jne 0x14018f8d0
cmp qword [rsp + 0x200], rsi
je 0x14018fb61
mov rax, qword [rsi + 0x10]
mov rsi, qword [rax]
mov rax, qword [rsi]
mov rax, qword [rax + 0x28]
mov rcx, rsi
call qword [0x140320008]
mov rax, qword [rsi]
mov rax, qword [rax + 0x20]
mov rcx, rsi
call qword [0x140320008]
mov dword [rsp + 0x64], eax
mov r8, qword [0x14030aa48]
test r8, r8
je 0x140190cbb
test byte [r8], 0x19
jne 0x14018fb76
mov rbx, qword [rsp + 0x200]
mov rdi, rbx
and rdi, r12
mov rcx, rbx
cmp rdi, qword [0x1402efec8]
jne 0x14018f93f
mov rcx, rbx
call fcn.14016baa0
mov rcx, qword [rsp + 0x200]
mov rax, rcx
and rax, r12
cmp rax, qword [0x1402efec8]
jne 0x14018f953
call fcn.14016bbf0
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 [0x1402efec8]
jne 0x14018f998
mov rcx, r14
call fcn.14016baa0
mov rcx, qword [rsp + 0x208]
mov rax, rcx
and rax, r12
cmp rax, qword [0x1402efec8]
jne 0x14018f9ac
call fcn.14016bbf0
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 [0x140320008]
cmp r13, qword [0x1402efec8]
jne 0x14018f9e2
mov rcx, r14
call fcn.14016bfa0
cmp rdi, qword [0x1402efec8]
jne 0x14018f9f3
mov rcx, rbx
call fcn.14016bfa0
mov r8, qword [0x14030aa50]
test r8, r8
je 0x140190cd6
test byte [r8], 0x19
je 0x14018fadc
movaps xmm0, xmmword [0x1402bb8f0]
lea rbx, [rsp + 0x240]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
mov rax, qword [0x1402c9490]
mov qword [rsp + 0x28], rax
mov byte [rsp + 0x30], 0
mov qword [rsp + 0x20], 0
lea r9, [0x1402c29b5]
mov rcx, rbx
mov dl, 0x45
call fcn.1401895a0
mov rax, qword [rbx]
test rax, rax
je 0x140190cf1
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.14016e160
mov rcx, r14
call fcn.14016e160
mov rcx, rbx
call fcn.140189580
test rsi, rsi
je 0x14018faf5
mov rax, qword [rsi]
mov rax, qword [rax + 0x30]
mov rcx, rsi
mov edx, dword [rsp + 0x64]
call qword [0x140320008]
mov rcx, qword [rsp + 0x208]
mov rax, rcx
and rax, r12
cmp rax, qword [0x1402efec8]
je 0x14018fb6f
mov qword [rsp + 0x208], 0
mov rcx, qword [rsp + 0x200]
and r12, rcx
cmp r12, qword [0x1402efec8]
je 0x14018fb68
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.1401d5680
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 0x14018faf5
jmp 0x1401906b8
xor eax, eax
xchg byte [rsi + 8], al
jmp 0x14018faf5
call fcn.14016bbf0
jmp 0x14018fb2c
call fcn.14016bbf0
jmp 0x14018fb0c
movaps xmm0, xmmword [0x1402bb8f0]
lea rbx, [rsp + 0x240]
movaps xmmword [rbx + 0x10], xmm0
movaps xmmword [rbx], xmm0
mov rax, qword [0x1402c9490]
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.1401895a0
mov rax, qword [rbx]
test rax, rax
je 0x1401900fa
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.14016cc10
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 + 0x58], rax
je 0x14018ff2c
lea r13, [rdi + 0xc8]
mov rbp, qword [rdi + 0xc8]
cmp rbp, 4
je 0x14018ff03
lea r9, [rdi + 0xd8]
mov r15, qword [rdi + 0xd8]
cmp r15, 4
je 0x14018ff08
lea r8, [rdi + 0xe8]
mov rax, qword [rdi + 0xe8]
cmp rax, 4
je 0x14018fefe
lea r11, [rdi + 0xf8]
mov rbx, qword [rdi + 0xf8]
cmp rbx, 4
je 0x14018fef9
mov qword [rsp + 0x48], r11
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], rdx
lea rcx, [rdi + 0x108]
mov r11, qword [rdi + 0x108]
cmp r11, 4
je 0x14018fef4
mov qword [rsp + 0x50], rcx
lea rdx, [rdi + 0x118]
mov rcx, qword [rdi + 0x118]
mov qword [rsp + 0x1f0], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x1e8], rdx
lea rdx, [rdi + 0x128]
mov qword [rsp + 0xe8], rdx
mov rcx, qword [rdi + 0x128]
cmp rcx, 4
je 0x14018feea
mov qword [rsp + 0x1e0], rcx
lea rdx, [rdi + 0x138]
mov rcx, qword [rdi + 0x138]
mov qword [rsp + 0x1d8], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x1d0], rdx
lea rdx, [rdi + 0x148]
mov qword [rsp + 0xe0], rdx
mov rcx, qword [rdi + 0x148]
cmp rcx, 4
je 0x14019064c
mov qword [rsp + 0x1c8], rcx
lea rdx, [rdi + 0x158]
mov rcx, qword [rdi + 0x158]
mov qword [rsp + 0x1c0], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x1b8], rdx
lea rdx, [rdi + 0x168]
mov qword [rsp + 0xd8], rdx
mov rcx, qword [rdi + 0x168]
cmp rcx, 4
je 0x14019067c
mov qword [rsp + 0x1b0], rcx
lea rdx, [rdi + 0x178]
mov rcx, qword [rdi + 0x178]
mov qword [rsp + 0x1a8], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x1a0], rdx
lea rdx, [rdi + 0x188]
mov qword [rsp + 0xd0], rdx
mov rcx, qword [rdi + 0x188]
cmp rcx, 4
je 0x140190689
mov qword [rsp + 0x198], rcx
lea rdx, [rdi + 0x198]
mov rcx, qword [rdi + 0x198]
mov qword [rsp + 0x190], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x188], rdx
lea rdx, [rdi + 0x1a8]
mov qword [rsp + 0xc8], rdx
mov rcx, qword [rdi + 0x1a8]
cmp rcx, 4
jne 0x1401906ef
mov r14, qword [rsp + 0xc8]
jmp 0x14018ff22
mov r14, qword [rsp + 0xe8]
jmp 0x14018ff22
mov r14, rcx
jmp 0x14018ff22
mov r14, r11
jmp 0x14018ff2c
mov r14, r8
jmp 0x14018ff2c
mov r14, r13
jmp 0x14018ff2c
mov r14, r9
jmp 0x14018ff2c
lea rbp, [rdi - 1]
and rbp, rbx
mov r10, r13
mov r11, r14
jmp 0x140190008
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 + 0x48], rax
mov r15d, dword [rsp + 0x298]
mov eax, dword [rsp + 0x29c]
mov dword [rsp + 0x50], eax
movsxd rbx, r15d
mov r14, rcx
mov r13, rdx
call fcn.14019fb20
mov rcx, rax
mov rdx, rbx
call fcn.14019fb20
mov rbx, rax
mov qword [rsp + 0x38], rdi
mov rdi, qword [rdi + 0x10]
test rdi, rdi
je 0x140190188
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 0x14018ff0d
mov rbp, rbx
cmp rbx, rdi
mov r10, r13
mov r11, r14
jb 0x140190008
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 0x140190192
mov r8, qword [rax]
test r8, r8
je 0x140190192
lea r9, [rdi - 1]
mov rax, qword [r8 + 8]
cmp rax, rbx
jne 0x14019011a
cmp qword [r8 + 0x18], r11
jne 0x14019010c
cmp qword [r8 + 0x10], r10
jne 0x14019010c
cmp dword [r8 + 0x20], r15d
jne 0x14019010c
mov r14, qword [r8 + 0x28]
mov r15, qword [rsp + 0x58]
cmp qword [r15 + 0x10], 0
jne 0x140190696
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 0x140190137
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 0x1401906a3
cmp edi, 2
jne 0x14019015d
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.14016e160
lea rcx, [rsp + 0x218]
call fcn.14016e160
lea rcx, [rsp + 0x240]
call fcn.140189580
jmp 0x14018f915
mov r8, qword [r8]
test r8, r8
jne 0x14019002d
jmp 0x140190192
cmp ecx, 1
jbe 0x140190183
cmp rax, rdi
jb 0x14019012c
xor edx, edx
div rdi
mov rax, rdx
cmp rax, rbp
je 0x14019003a
jmp 0x140190192
mov rdx, r14
mov r8d, edx
or r8b, 0x80
mov byte [rax], r8b
shr r14, 7
inc rax
cmp rdx, 0x3fff
ja 0x140190137
lea rdi, [rax - 1]
jmp 0x1401900a2
cmp edi, 3
jne 0x140190171
mov al, byte [rsp + 0x2a2]
mov byte [rcx + 2], al
jmp 0x1401900cd
lea rdx, [rsp + 0x2a0]
call fcn.1401d7120
jmp 0x1401900d8
and rax, r9
jmp 0x14019012c
movabs rbp, 0xaaaaaaaaaaaaaaaa
mov ecx, 0x30
call fcn.1401d4088
cmp rax, 0xfffffffffffffff0
je 0x140190d17
mov r9, rax
mov rax, qword [rsp + 0x48]
inc rax
mov qword [r9 + 0x10], r13
mov qword [r9 + 0x18], r14
mov r14, rax
mov dword [r9 + 0x20], r15d
mov eax, dword [rsp + 0x50]
mov dword [r9 + 0x24], eax
mov qword [r9 + 0x28], r14
mov qword [r9 + 8], rbx
mov qword [r9], 0
mov r8, qword [rsp + 0x38]
mov rax, qword [r8 + 0x20]
inc rax
jns 0x1401901ff
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
jmp 0x140190207
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mov r15, qword [rsp + 0x58]
mov rcx, rdi
shr rcx, 1
mov eax, edi
and eax, 1
or rax, rcx
test rdi, rdi
js 0x140190226
cvtsi2ss xmm1, rdi
jmp 0x14019022f
cvtsi2ss xmm1, rax
addss xmm1, xmm1
movss xmm2, dword [r8 + 0x28]
je 0x1401902ce
mulss xmm1, xmm2
ucomiss xmm0, xmm1
ja 0x1401902ce
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
mov rax, qword [rcx + rbp*8]
test rax, rax
jne 0x1401902c6
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 0x1401902a1
mov rax, qword [rax + 8]
lea rcx, [rdi - 1]
test rdi, rcx
je 0x140190510
cmp rax, rdi
mov rcx, qword [rsp + 0x40]
jb 0x140190297
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.1401a87e0
jmp 0x140190061
mov rcx, qword [rax]
mov qword [r9], rcx
jmp 0x14019029e
mov qword [rsp + 0x48], r9
divss xmm0, xmm2
call fcn.1401f2f70
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x1402ae688]
sar rdx, 0x3f
cvttss2si rax, xmm0
and rax, rdx
or rax, rcx
lea rcx, [rdi + rdi]
mov r13d, 1
cmp rdi, 3
jae 0x1401904fd
or r13, rcx
cmp r13, rax
cmovbe r13, rax
cmp r13, 1
mov rbp, qword [rsp + 0x40]
jne 0x1401903a3
mov r13d, 2
cmp rdi, 2
jae 0x140190531
lea rcx, [r13*8]
call fcn.1401d4088
mov rcx, qword [rbp]
mov qword [rbp], rax
test rcx, rcx
je 0x140190353
call fcn.1401d40d8
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 0x14019035e
mov rax, qword [rsp + 0x38]
mov r8, qword [rax + 0x18]
test r8, r8
jne 0x1401903db
mov r8, qword [rsp + 0x38]
mov rdi, qword [r8 + 0x10]
lea rbp, [rdi - 1]
test rdi, rbp
jne 0x1401904df
and rbp, rbx
mov r9, qword [rsp + 0x48]
jmp 0x140190248
lea rax, [r13 - 1]
test r13, rax
je 0x1401903c0
mov rcx, r13
call fcn.1401864f0
mov r13, rax
mov rax, qword [rsp + 0x38]
mov rdi, qword [rax + 0x10]
cmp r13, rdi
jbe 0x140190531
mov rax, r13
shr rax, 0x3d
je 0x140190334
jmp 0x140190d12
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 0x140190525
cmp rcx, r13
jb 0x14019045e
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 0x140190380
lea r11, [r13 - 1]
mov rax, qword [r10 + 8]
cmp r9d, 1
jbe 0x14019051d
cmp rax, r13
jb 0x140190491
xor edx, edx
div r13
mov rax, rdx
cmp rax, rcx
je 0x1401904da
mov rdx, qword [rbp]
cmp qword [rdx + rax*8], 0
jne 0x1401904b8
mov qword [rdx + rax*8], r8
mov r8, r10
mov r10, qword [r10]
mov rcx, rax
test r10, r10
jne 0x140190476
jmp 0x140190380
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 0x1401904a5
cmp rbx, rdi
mov r9, qword [rsp + 0x48]
jb 0x140190d43
mov rax, rbx
xor edx, edx
div rdi
mov rbp, rdx
jmp 0x140190248
lea rdx, [rdi - 1]
xor r13d, r13d
test rdi, rdx
setne r13b
jmp 0x14019030f
and rax, rcx
mov rcx, qword [rsp + 0x40]
jmp 0x140190297
and rax, r11
jmp 0x140190491
lea rax, [r13 - 1]
and rcx, rax
jmp 0x14019045e
cmp r13, rdi
jae 0x140190380
mov rax, qword [rsp + 0x38]
mov rax, qword [rax + 0x20]
test rax, rax
jns 0x140190562
mov rcx, rax
shr rcx, 1
and eax, 1
or rax, rcx
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
addss xmm0, xmm0
jmp 0x14019056a
xorps xmm0, xmm0
cvtsi2ss xmm0, rax
mov rax, qword [rsp + 0x38]
divss xmm0, dword [rax + 0x28]
call fcn.1401f2f70
cvttss2si rcx, xmm0
mov rdx, rcx
subss xmm0, dword [0x1402ae688]
cvttss2si rax, xmm0
sar rdx, 0x3f
and rax, rdx
or rax, rcx
cmp rdi, 3
jb 0x140190622
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 0x140190622
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 0x14019062d
mov rcx, rax
call fcn.1401864f0
mov rdx, rax
cmp r13, rdx
cmova rdx, r13
cmp rdx, rdi
mov rcx, qword [rsp + 0x40]
jae 0x140190380
call fcn.1400fe2e0
jmp 0x140190380
mov r14, qword [rsp + 0xe0]
jmp 0x14018ff22
mov al, cl
neg eax
mov edi, eax
jmp 0x14018f7b5
lea rbx, [rsp + 0x260]
mov rcx, rbx
call fcn.140192590
mov rax, qword [rbx]
jmp 0x14018f74d
mov r14, qword [rsp + 0xd8]
jmp 0x14018ff22
mov r14, qword [rsp + 0xd0]
jmp 0x14018ff22
mov rcx, r15
call fcn.14016c9b0
jmp 0x14019006c
lea rdx, [rsp + 0x2a0]
mov rcx, rbx
call fcn.14016d400
jmp 0x1401900dc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x214], eax
mov dword [rsp + 0x210], 0
jmp 0x14018f839
mov r14, qword [rsp + 0xb8]
jmp 0x14018ff22
mov r14, qword [rsp + 0xc0]
jmp 0x14018ff22
mov qword [rsp + 0x180], rcx
lea rdx, [rdi + 0x1b8]
mov rcx, qword [rdi + 0x1b8]
mov qword [rsp + 0x178], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x170], rdx
lea rdx, [rdi + 0x1c8]
mov qword [rsp + 0xc0], rdx
mov rcx, qword [rdi + 0x1c8]
cmp rcx, 4
je 0x1401906e2
mov qword [rsp + 0x168], rcx
lea rdx, [rdi + 0x1d8]
mov rcx, qword [rdi + 0x1d8]
mov qword [rsp + 0x160], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x158], rdx
lea rdx, [rdi + 0x1e8]
mov qword [rsp + 0xb8], rdx
mov rcx, qword [rdi + 0x1e8]
cmp rcx, 4
je 0x1401906d5
mov qword [rsp + 0x150], rcx
lea rdx, [rdi + 0x1f8]
mov rcx, qword [rdi + 0x1f8]
mov qword [rsp + 0x148], rcx
cmp rcx, 4
je 0x14018ff1f
mov qword [rsp + 0x140], rdx
lea rdx, [rdi + 0x208]
mov qword [rsp + 0xb0], rdx
mov rcx, qword [rdi + 0x208]
cmp rcx, 4
je 0x1401909a8
lea rdx, [rdi + 0x218]
mov qword [rsp + 0xa8], rdx
mov rdx, qword [rdi + 0x218]
mov qword [rsp + 0x138], rdx
cmp rdx, 4
je 0x1401909b5
lea rdx, [rdi + 0x228]
mov qword [rsp + 0xa0], rdx
mov rdx, qword [rdi + 0x228]
mov qword [rsp + 0x130], rdx
cmp rdx, 4
je 0x1401909c2
lea rdx, [rdi + 0x238]
mov qword [rsp + 0x98], rdx
mov rdx, qword [rdi + 0x238]
mov qword [rsp + 0x128], rdx
cmp rdx, 4
je 0x1401909cf
lea rdx, [rdi + 0x248]
mov qword [rsp + 0x90], rdx
mov rdx, qword [rdi + 0x248]
mov qword [rsp + 0x120], rdx
cmp rdx, 4
je 0x1401909dc
lea rdx, [rdi + 0x258]
mov qword [rsp + 0x88], rdx
mov rdx, qword [rdi + 0x258]
mov qword [rsp + 0x118], rdx
cmp rdx, 4
je 0x1401909e9
lea rdx, [rdi + 0x268]
mov qword [rsp + 0x80], rdx
mov rdx, qword [rdi + 0x268]
mov qword [rsp + 0x110], rdx
cmp rdx, 4
je 0x1401909f6
lea rdx, [rdi + 0x278]
mov qword [rsp + 0x78], rdx
mov rdx, qword [rdi + 0x278]
mov qword [rsp + 0x108], rdx
cmp rdx, 4
je 0x140190a03
lea rdx, [rdi + 0x288]
mov qword [rsp + 0x70], rdx
mov rdx, qword [rdi + 0x288]
mov qword [rsp + 0x100], rdx
cmp rdx, 4
je 0x140190a0d
lea rdx, [rdi + 0x298]
mov qword [rsp + 0x68], rdx
mov rdx, qword [rdi + 0x298]
mov qword [rsp + 0xf8], rdx
cmp rdx, 4
je 0x140190a17
mov rdx, qword [rdi + reloc.SHELL32.dll_IsUserAnAdmin]
add rdi, reloc.SHELL32.dll_IsUserAnAdmin
mov qword [rsp + 0xf0], rdx
cmp rdx, 4
je 0x140190a21
test r10, r10
je 0x140190ac5
mov r14, r13
test rbp, rbp
je 0x140190ac5
mov r14, r9
test r15, r15
je 0x140190ac5
mov r14, r8
test rax, rax
je 0x140190ac5
mov r14, qword [rsp + 0x48]
test rbx, rbx
je 0x140190ac5
mov r14, qword [rsp + 0x50]
test r11, r11
jne 0x140190a29
jmp 0x140190ac5
mov r14, qword [rsp + 0xb0]
jmp 0x14018ff22
mov r14, qword [rsp + 0xa8]
jmp 0x14018ff22
mov r14, qword [rsp + 0xa0]
jmp 0x14018ff22
mov r14, qword [rsp + 0x98]
jmp 0x14018ff22
mov r14, qword [rsp + 0x90]
jmp 0x14018ff22
mov r14, qword [rsp + 0x88]
jmp 0x14018ff22
mov r14, qword [rsp + 0x80]
jmp 0x14018ff22
mov r14, qword [rsp + 0x78]
jmp 0x14018ff22
mov r14, qword [rsp + 0x70]
jmp 0x14018ff22
mov r14, qword [rsp + 0x68]
jmp 0x14018ff22
mov r14, rdi
jmp 0x14018ff22
mov r14, qword [rsp + 0x1e8]
cmp qword [rsp + 0x1f0], 0
je 0x140190ac5
mov r14, qword [rsp + 0xe8]
cmp qword [rsp + 0x1e0], 0
je 0x140190ac5
mov r14, qword [rsp + 0x1d0]
cmp qword [rsp + 0x1d8], 0
je 0x140190ac5
mov r14, qword [rsp + 0xe0]
cmp qword [rsp + 0x1c8], 0
je 0x140190ac5
mov r14, qword [rsp + 0x1b8]
cmp qword [rsp + 0x1c0], 0
je 0x140190ac5
mov r14, qword [rsp + 0xd8]
cmp qword [rsp + 0x1b0], 0
je 0x140190ac5
mov r14, qword [rsp + 0x1a0]
cmp qword [rsp + 0x1a8], 0
je 0x140190ac5
mov r14, qword [rsp + 0xd0]
cmp qword [rsp + 0x198], 0
jne 0x140190b1e
mov qword [r14], 4
lea rbx, [r14 + 8]
mov ecx, 0x30
call fcn.1401d4088
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, [0x1402bd7b8]
mov qword [rax], rcx
mov rcx, qword [r14 + 8]
mov qword [r14 + 8], rax
test rcx, rcx
jne 0x140190ca5
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
jmp 0x14018ff33
mov r14, qword [rsp + 0x188]
cmp qword [rsp + 0x190], 0
je 0x140190ac5
mov r14, qword [rsp + 0xc8]
cmp qword [rsp + 0x180], 0
je 0x140190ac5
mov r14, qword [rsp + 0x170]
cmp qword [rsp + 0x178], 0
je 0x140190ac5
mov r14, qword [rsp + 0xc0]
cmp qword [rsp + 0x168], 0
je 0x140190ac5
mov r14, qword [rsp + 0x158]
cmp qword [rsp + 0x160], 0
je 0x140190ac5
mov r14, qword [rsp + 0xb8]
cmp qword [rsp + 0x150], 0
je 0x140190ac5
mov r14, qword [rsp + 0x140]
cmp qword [rsp + 0x148], 0
je 0x140190ac5
mov r14, qword [rsp + 0xb0]
test rcx, rcx
je 0x140190ac5
mov r14, qword [rsp + 0xa8]
cmp qword [rsp + 0x138], 0
je 0x140190ac5
mov r14, qword [rsp + 0xa0]
cmp qword [rsp + 0x130], 0
je 0x140190ac5
mov r14, qword [rsp + 0x98]
cmp qword [rsp + 0x128], 0
je 0x140190ac5
mov r14, qword [rsp + 0x90]
cmp qword [rsp + 0x120], 0
je 0x140190ac5
mov r14, qword [rsp + 0x88]
cmp qword [rsp + 0x118], 0
je 0x140190ac5
mov r14, qword [rsp + 0x80]
cmp qword [rsp + 0x110], 0
je 0x140190ac5
mov r14, qword [rsp + 0x78]
cmp qword [rsp + 0x108], 0
je 0x140190ac5
mov r14, qword [rsp + 0x70]
cmp qword [rsp + 0x100], 0
je 0x140190ac5
mov r14, qword [rsp + 0x68]
cmp qword [rsp + 0xf8], 0
je 0x140190ac5
mov r14, rdi
cmp qword [rsp + 0xf0], 0
je 0x140190ac5
jmp 0x140190d4b
mov rax, qword [rcx]
mov rax, qword [rax]
mov edx, 1
call qword [0x140320008]
jmp 0x140190b0f
lea rcx, str.base_toplevel
call fcn.1401898f0
mov r8, rax
mov qword [0x14030aa48], rax
jmp 0x14018f90b
lea rcx, str.base_toplevel
call fcn.1401898f0
mov r8, rax
mov qword [0x14030aa50], rax
jmp 0x14018fa03
lea rcx, [rsp + 0x240]
jmp 0x14018fad7
call fcn.14016bbf0
jmp 0x14018f85c
call fcn.14016bbf0
jmp 0x14018f89e
call fcn.140213770
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x25
call fcn.140215d40
mov rbp, rbx
jmp 0x140190248
call fcn.1401eaf00
mov ecx, dword [rax]
call fcn.1401fc134
mov rsi, rax
call fcn.1401eaf00
mov edi, dword [rax]
lea rcx, str....._third_partyperfettoincludeperfetto_tracing_track_event_interned_data_index.h
call fcn.14021f6c0
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.14021fb40
int3