Function at 0x54fc40
Capabilities:
Access peb ldr_data

Disassembly:
lea r12, [rsp - 0x150]
cmp r12, qword [r14 + 0x10]
jbe 0x5506a6
push rbp
mov rbp, rsp
sub rsp, 0x1c8
cmp byte [rax + 0x78], 0
je 0x55068e
mov qword [rsp + 0x1d8], rax
cmp qword [rax + 0x68], 0
jne 0x54fcc1
lea rax, [0x005bc9a0]
nop dword [rax]
call sym.runtime.newobject
lea rcx, [0x0083f4a0]
mov qword [rax], rcx
cmp dword [0x0083f760], 0
jne 0x54fca2
mov rdx, qword [rsp + 0x1d8]
jmp 0x54fcba
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rdx + 0x68]
mov qword [r11 + 8], r8
mov qword [rdx + 0x68], rax
mov rax, rdx
cmp qword [rax + 0x70], 0
jne 0x54fd10
lea rax, [0x005bc9a0]
call sym.runtime.newobject
lea rcx, [0x0083f4a0]
mov qword [rax], rcx
cmp dword [0x0083f760], 0
jne 0x54fcf1
mov rdx, qword [rsp + 0x1d8]
jmp 0x54fd09
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rdx, qword [rsp + 0x1d8]
mov r8, qword [rdx + 0x70]
mov qword [r11 + 8], r8
mov qword [rdx + 0x70], rax
mov rax, rdx
cmp qword [rax + 0x10], 0
je 0x550681
cmp qword [rax + 0x58], 0
jg 0x54fd42
mov rdx, qword [0x0083f538]
test rdx, rdx
jg 0x54fd88
call sym.github.com_pterm_pterm.GetTerminalSize
mov rdx, rax
mov rax, qword [rsp + 0x1d8]
nop
jmp 0x54fd88
mov rdx, qword [0x0083f538]
test rdx, rdx
jg 0x54fd5e
call sym.github.com_pterm_pterm.GetTerminalSize
mov rdx, rax
mov rax, qword [rsp + 0x1d8]
mov r8, qword [rax + 0x58]
cmp rdx, r8
jge 0x54fd85
mov rdx, qword [0x0083f538]
test rdx, rdx
jg 0x54fd88
call sym.github.com_pterm_pterm.GetTerminalSize
mov rdx, rax
mov rax, qword [rsp + 0x1d8]
jmp 0x54fd88
mov rdx, r8
mov qword [rsp + 0x68], rdx
cmp byte [rax + 0x62], 0
jne 0x54fd9c
xor ebx, ebx
xor ecx, ecx
jmp 0x54fe28
movups xmmword [rsp + 0x110], xmm15
mov rcx, qword [rax]
mov rbx, qword [rax + 8]
mov rax, rcx
call sym.runtime.convTstring
lea rcx, [0x00594c80]
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rax
mov rdx, qword [rsp + 0x1d8]
mov rsi, qword [rdx + 0x68]
mov rbx, qword [rsi + 8]
mov rdi, qword [rsi + 0x10]
mov rax, qword [rsi]
mov esi, 1
mov r8, rsi
mov rcx, rdi
lea rdi, [rsp + 0x110]
call sym.github.com_pterm_pterm.Style.Sprint
xor ecx, ecx
mov rdi, rax
mov rsi, rbx
lea r8, [0x006159d0]
mov r9d, 1
xor eax, eax
xor ebx, ebx
call sym.runtime.concatstring3
mov rdx, qword [rsp + 0x68]
mov rcx, rax
mov rax, qword [rsp + 0x1d8]
cmp byte [rax + 0x61], 0
je 0x5501f8
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0xc8], rcx
mov rcx, qword [rax + 0x10]
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
nop
movsd qword [rsp], xmm0
call sym.math.archLog.abi0
xorps xmm15, xmm15
mov r14, qword [0x0083f710]
mov r14, qword gs:[r14]
mov r14, qword [r14]
movsd xmm0, qword [0x006159f0]
mulsd xmm0, qword [rsp + 8]
movsd qword [rsp + 0x60], xmm0
lea rax, [0x00596a60]
call sym.runtime.newobject
lea rcx, [0x00594c80]
mov qword [rax], rcx
lea rdx, [0x00615d08]
mov qword [rax + 8], rdx
movsd xmm0, qword [rsp + 0x60]
cvttsd2si rdx, xmm0
inc rdx
mov qword [rsp + 0x70], rdx
mov rbx, qword [0x007b8eb8]
mov rsi, qword [rbx]
mov rdi, rbx
mov ebx, 1
mov rcx, rbx
mov rdx, rdi
call rsi
mov qword [rsp + 0x150], rax
mov qword [rsp + 0xc0], rbx
movups xmmword [rsp + 0xf0], xmm15
movups xmmword [rsp + 0x100], xmm15
mov rax, qword [rsp + 0x70]
call sym.runtime.convT64
lea rcx, [0x00594ec0]
mov qword [rsp + 0xf0], rcx
mov qword [rsp + 0xf8], rax
mov rax, qword [rsp + 0x1d8]
mov rdx, qword [rax + 0x18]
mov rax, rdx
nop
call sym.runtime.convT64
lea rcx, [0x00594ec0]
mov qword [rsp + 0x100], rcx
mov qword [rsp + 0x108], rax
lea rax, [0x005cd5c6]
mov ebx, 4
mov edi, 2
mov rsi, rdi
lea rcx, [rsp + 0xf0]
call sym.fmt.Sprintf
mov qword [rsp + 0x148], rax
mov qword [rsp + 0xb8], rbx
lea rax, [0x00596a60]
call sym.runtime.newobject
mov qword [rsp + 0x140], rax
mov rbx, qword [rsp + 0xb8]
mov rax, qword [rsp + 0x148]
call sym.runtime.convTstring
lea rcx, [0x00594c80]
mov rdx, qword [rsp + 0x140]
mov qword [rdx], rcx
cmp dword [0x0083f760], 0
je 0x54ffc1
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov rsi, qword [rdx + 8]
mov qword [r11 + 8], rsi
mov qword [rdx + 8], rax
mov rsi, qword [0x007b8f18]
mov rdi, qword [rsi]
mov rax, rdx
mov ebx, 1
mov rcx, rbx
mov rdx, rsi
call rdi
mov qword [rsp + 0x148], rax
mov qword [rsp + 0xb8], rbx
lea rax, [0x00596a60]
call sym.runtime.newobject
lea rsi, [0x00594c80]
mov qword [rax], rsi
lea rdi, [0x00615d18]
mov qword [rax + 8], rdi
mov rdx, qword [0x007b8eb8]
mov rdi, qword [rdx]
mov ebx, 1
mov rcx, rbx
call rdi
mov qword [rsp + 0x138], rax
mov qword [rsp + 0xb0], rbx
lea rax, [0x00596a60]
nop dword [rax + rax]
call sym.runtime.newobject
mov qword [rsp + 0x130], rax
mov rsi, qword [rsp + 0x1d8]
mov rdi, qword [rsi + 0x10]
mov rax, rdi
nop dword [rax]
call sym.runtime.convT64
lea rsi, [0x00594ec0]
mov rdi, qword [rsp + 0x130]
mov qword [rdi], rsi
cmp dword [0x0083f760], 0
nop
je 0x550092
call sym.runtime.gcWriteBarrier2
mov qword [r11], rax
mov r8, qword [rdi + 8]
mov qword [r11 + 8], r8
mov qword [rdi + 8], rax
mov rdx, qword [0x007b8f18]
mov rsi, qword [rdx]
mov rax, rdi
mov ebx, 1
mov rcx, rbx
call rsi
mov qword [rsp + 0x128], rax
mov qword [rsp + 0xa8], rbx
lea rax, [0x00596a60]
call sym.runtime.newobject
lea rsi, [0x00594c80]
mov qword [rax], rsi
lea rdi, [0x00615d28]
mov qword [rax + 8], rdi
mov rdx, qword [0x007b8eb8]
mov rdi, qword [rdx]
mov ebx, 1
mov rcx, rbx
call rdi
lea rdi, [rsp + 0x158]
lea rdi, [rdi - 0x10]
nop
mov qword [rsp - 0x10], rbp
lea rbp, [rsp - 0x10]
call fcn.0046b906
mov rbp, qword [rbp]
mov rsi, qword [rsp + 0x80]
mov qword [rsp + 0x160], rsi
mov rsi, qword [rsp + 0xc8]
mov qword [rsp + 0x158], rsi
mov rsi, qword [rsp + 0xc0]
mov qword [rsp + 0x170], rsi
mov rsi, qword [rsp + 0x150]
mov qword [rsp + 0x168], rsi
mov rsi, qword [rsp + 0xb8]
mov qword [rsp + 0x180], rsi
mov rsi, qword [rsp + 0x148]
mov qword [rsp + 0x178], rsi
mov rsi, qword [rsp + 0xb0]
mov qword [rsp + 0x190], rsi
mov rsi, qword [rsp + 0x138]
mov qword [rsp + 0x188], rsi
mov rsi, qword [rsp + 0xa8]
mov qword [rsp + 0x1a0], rsi
mov rsi, qword [rsp + 0x128]
mov qword [rsp + 0x198], rsi
mov qword [rsp + 0x1b0], rbx
mov qword [rsp + 0x1a8], rax
mov qword [rsp + 0x1c0], 1
lea rsi, [0x006159d0]
mov qword [rsp + 0x1b8], rsi
xor eax, eax
lea rbx, [rsp + 0x158]
mov ecx, 7
mov rdi, rcx
call sym.runtime.concatstrings
mov rcx, rax
mov qword [rsp + 0xc8], rcx
mov qword [rsp + 0x80], rbx
xor eax, eax
lea rdi, [0x006159d0]
mov esi, 1
xor ebx, ebx
xor ecx, ecx
call sym.runtime.concatstring2
mov rdx, qword [rsp + 0x1d8]
cmp byte [rdx + 0x63], 0
je 0x5503fd
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xd8], rax
mov r10, qword [rdx + 0x10]
xorps xmm3, xmm3
cvtsi2sd xmm3, r10
mov r10, qword [rdx + 0x18]
xorps xmm4, xmm4
cvtsi2sd xmm4, r10
divsd xmm4, xmm3
movsd xmm3, qword [0x006159f8]
mulsd xmm3, xmm4
movq rcx, xmm3
mov r10, rcx
shr r10, 0x34
and r10d, 0x7ff
nop
nop
nop
nop
cmp r10, 0x3ff
jae 0x5502b3
movabs r11, 0x8000000000000000
and r11, rcx
movabs r12, 0x3ff0000000000000
or r12, r11
cmp r10, 0x3fe
cmove r11, r12
mov rcx, r11
jmp 0x5502fa
cmp r10, 0x433
jae 0x5502fa
add r10, 0xfffffffffffffc01
mov rsi, rcx
mov rcx, r10
movabs r11, 0x8000000000000
shr r11, cl
movabs r12, 0xfffffffffffff
shr r12, cl
cmp rcx, 0x40
sbb rcx, rcx
and r11, rcx
lea r10, [rsi + r11]
and rcx, r12
not rcx
and rcx, r10
movq xmm3, rcx
cvttsd2si r10, xmm3
mov qword [rsp + 0x78], r10
mov byte [rsp + 0x3c], 0
mov word [rsp + 0x3d], 0
mov byte [rsp + 0x3f], 0
mov byte [rsp + 0x3c], 0
mov word [rsp + 0x3d], 0xff
mov byte [rsp + 0x3f], 0
mov r11, qword [rdx + 0x10]
xorps xmm1, xmm1
cvtsi2ss xmm1, r11
mov r11, qword [rdx + 0x18]
xorps xmm2, xmm2
cvtsi2ss xmm2, r11
mov eax, 0xffffffff
xor ebx, ebx
mov ecx, ebx
xor edi, edi
xorps xmm0, xmm0
lea rsi, [rsp + 0x3c]
mov r8d, 1
mov r9, r8
nop
call sym.github.com_pterm_pterm.RGB.Fade
mov dword [rsp + 0x38], 0
mov byte [rsp + 0x38], al
mov byte [rsp + 0x39], bl
mov byte [rsp + 0x3a], cl
movups xmmword [rsp + 0x110], xmm15
mov rax, qword [rsp + 0x78]
call sym.runtime.convT64
lea rdx, [0x00594ec0]
mov qword [rsp + 0x110], rdx
mov qword [rsp + 0x118], rax
mov edx, dword [rsp + 0x38]
mov dword [rsp], edx
lea rax, [0x005cda14]
mov ebx, 5
lea rcx, [rsp + 0x110]
mov edi, 1
mov rsi, rdi
call sym.github.com_gookit_color.RGBColor.Sprintf
mov rcx, qword [rsp + 0x98]
mov rdi, rax
mov rsi, rbx
lea r8, [0x006159d0]
mov r9d, 1
xor eax, eax
mov rbx, qword [rsp + 0xd8]
call sym.runtime.concatstring3
mov rdx, qword [rsp + 0x1d8]
cmp byte [rdx + 0x60], 0
je 0x550445
mov qword [rsp + 0x120], rax
mov qword [rsp + 0xa0], rbx
mov rax, rdx
call sym.github.com_pterm_pterm._ProgressbarPrinter_.parseElapsedTime
mov rcx, qword [rsp + 0xa0]
lea rdi, [0x005ccf9e]
mov esi, 2
mov r8, rax
mov r9, rbx
xor eax, eax
mov rbx, qword [rsp + 0x120]
nop
call sym.runtime.concatstring3
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xd8], rax
movups xmmword [rsp + 0x110], xmm15
mov rax, qword [rsp + 0xc8]
mov rbx, qword [rsp + 0x80]
call sym.runtime.convTstring
lea rcx, [0x00594c80]
mov qword [rsp + 0x110], rcx
mov qword [rsp + 0x118], rax
lea rax, [rsp + 0x110]
mov ebx, 1
mov rcx, rbx
call sym.github.com_pterm_pterm.RemoveColorFromString
mov rcx, qword [rsp + 0x68]
sub rcx, rbx
mov qword [rsp + 0xc0], rcx
movups xmmword [rsp + 0xe0], xmm15
mov rax, qword [rsp + 0xd8]
mov rbx, qword [rsp + 0x98]
call sym.runtime.convTstring
lea rcx, [0x00594c80]
mov qword [rsp + 0xe0], rcx
mov qword [rsp + 0xe8], rax
lea rax, [rsp + 0xe0]
mov ebx, 1
mov rcx, rbx
call sym.github.com_pterm_pterm.RemoveColorFromString
mov rax, qword [rsp + 0xc0]
sub rax, rbx
lea rcx, [rax - 1]
mov rdx, qword [rsp + 0x1d8]
mov rsi, qword [rdx + 0x18]
mov rdi, qword [rdx + 0x10]
imul rsi, rcx
nop dword [rax]
test rdi, rdi
je 0x55069b
mov rcx, rax
mov rax, rsi
mov rbx, rdx
cmp rdi, 0xffffffffffffffff
jne 0x55053f
neg rax
xor edx, edx
jmp 0x550544
cqo
idiv rdi
sub rcx, rax
dec rcx
test rcx, rcx
jg 0x550555
xor ecx, ecx
xor edx, edx
jmp 0x550583
mov qword [rsp + 0x90], rax
mov rax, qword [rbx + 0x48]
mov rdx, qword [rbx + 0x50]
mov rbx, rdx
call sym.strings.Repeat
mov rcx, rbx
mov rdx, rax
mov rax, qword [rsp + 0x90]
mov rbx, qword [rsp + 0x1d8]
test rax, rax
jle 0x55064b
mov qword [rsp + 0xd0], rdx
mov qword [rsp + 0x88], rcx
mov rdx, qword [rbx + 0x20]
mov rsi, qword [rbx + 0x28]
mov rcx, rax
mov rax, rdx
mov rbx, rsi
call sym.strings.Repeat
movups xmmword [rsp + 0xe0], xmm15
mov rdx, qword [rsp + 0x1d8]
mov rsi, qword [rdx + 0x38]
mov rdi, qword [rdx + 0x30]
mov rcx, rbx
mov rbx, rax
xor eax, eax
call sym.runtime.concatstring2
call sym.runtime.convTstring
lea rdx, [0x00594c80]
mov qword [rsp + 0xe0], rdx
mov qword [rsp + 0xe8], rax
mov rdx, qword [rsp + 0x1d8]
mov rdx, qword [rdx + 0x70]
mov rax, qword [rdx]
mov rbx, qword [rdx + 8]
mov rcx, qword [rdx + 0x10]
lea rdi, [rsp + 0xe0]
mov esi, 1
mov r8, rsi
nop dword [rax + rax]
call sym.github.com_pterm_pterm.Style.Sprint
mov rcx, rbx
mov rdi, qword [rsp + 0xd0]
mov rsi, qword [rsp + 0x88]
mov rbx, rax
lea rax, [rsp + 0x40]
call sym.runtime.concatstring2
mov rcx, rbx
mov rdx, rax
xor eax, eax
mov rbx, qword [rsp + 0xc8]
mov rdi, rdx
mov rsi, rcx
mov r8, qword [rsp + 0xd8]
mov r9, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x80]
call sym.runtime.concatstring3
add rsp, 0x1c8
pop rbp
ret
xor eax, eax
xor ebx, ebx
add rsp, 0x1c8
pop rbp
ret
xor eax, eax
xor ebx, ebx
add rsp, 0x1c8
pop rbp
ret
nop dword [rax + rax]
call sym.runtime.panicdivide
nop
mov qword [rsp + 8], rax
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
jmp sym.github.com_pterm_pterm._ProgressbarPrinter_.getString