Function at 0x18006a830
Capabilities:
Get file size

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x388]
sub rsp, 0x450
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
mov rax, qword [0x1800a74e0]
xor rax, rsp
mov qword [rbp + 0x310], rax
imul eax, r8d, 0x420
mov r15d, r8d
mov qword [rsp + 0x58], rdx
mov rsi, rdx
mov rbx, qword [rsp + 0x58]
mov r10, rcx
mov qword [rsp + 0x48], r9
mov r14d, r8d
mov dword [rsp + 0x40], r8d
mov qword [rsp + 0x50], rcx
mov dword [rsp + 0x44], eax
cmp r8d, eax
ja 0x18006aeab
movsd xmm6, qword [0x18009f380]
xor edi, edi
movsd xmm7, qword [0x18009f308]
movabs rdx, 0xc069000000000000
movsd xmm8, qword [0x18009f2c8]
mov r12, qword [rsp + 0x68]
cmp r14d, 0xa8e0
ja 0x18006ae7e
je 0x18006ae75
mov eax, r14d
sub eax, 0x2d
je 0x18006aa08
sub eax, 0xb3
je 0x18006a9f9
sub eax, 0x31
je 0x18006a97b
sub eax, 0x53cf
je 0x18006a924
cmp eax, 0x1291
jne 0x18006aefd
mov rax, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov qword [r9], rax
jmp 0x18006aefd
mov ecx, 0x18
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov qword [rsp + 0x68], rax
mov r12, rax
test rax, rax
je 0x18006af1d
mov ecx, dword [rsi]
mov edx, 1
add ecx, 7
shr rcx, 3
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_calloc]
mov qword [r12 + 8], rax
test rax, rax
je 0x18006af14
mov r9, qword [rsp + 0x48]
movabs rdx, 0xc069000000000000
mov r10, qword [rsp + 0x50]
jmp 0x18006aefd
lea rax, [rbp + 0x100]
mov dword [rsp + 0x28], 0x104
mov r9d, 0xffffffff
mov qword [rsp + 0x20], rax
mov r8, rsi
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
xor r9d, r9d
mov qword [rsp + 0x30], rdi
mov dword [rsp + 0x28], edi
lea rcx, [rbp + 0x100]
mov edx, 0x80000000
mov dword [rsp + 0x20], 3
lea r8d, [r9 + 1]
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov qword [rsp + 0x70], rax
cmp rax, 0xffffffffffffffff
je 0x18006af22
lea rdx, [rsp + 0x78]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x18006af32
jmp 0x18006a962
cmp dword [r10], 0x40
ja 0x18006af1d
jmp 0x18006aefd
lea rax, [rbp]
mov ecx, 4
mov qword [rax], rdx
mov qword [rax + 8], rdx
mov qword [rax + 0x10], rdx
lea rax, [rax + 0x40]
mov qword [rax - 0x28], rdx
mov qword [rax - 0x20], rdx
mov qword [rax - 0x18], rdx
mov qword [rax - 0x10], rdx
mov qword [rax - 8], rdx
sub rcx, 1
jne 0x18006aa11
mov eax, 2
lea rcx, [r9 + 0x18]
lea r8d, [rax + 0x7e]
nop word [rax + rax]
movsd xmm0, qword [rcx - 0x10]
lea rdx, [rax - 2]
sar rdx, 4
comisd xmm0, xmmword [rbp + rdx*8]
jbe 0x18006aa6b
movsd qword [rbp + rdx*8], xmm0
movsd xmm0, qword [rcx - 8]
lea rdx, [rax - 1]
sar rdx, 4
comisd xmm0, xmmword [rbp + rdx*8]
jbe 0x18006aa86
movsd qword [rbp + rdx*8], xmm0
movsd xmm0, qword [rcx]
mov rdx, rax
sar rdx, 4
comisd xmm0, xmmword [rbp + rdx*8]
jbe 0x18006aa9f
movsd qword [rbp + rdx*8], xmm0
movsd xmm0, qword [rcx + 8]
lea rdx, [rax + 1]
sar rdx, 4
comisd xmm0, xmmword [rbp + rdx*8]
jbe 0x18006aaba
movsd qword [rbp + rdx*8], xmm0
add rax, 4
add rcx, 0x20
sub r8, 1
jne 0x18006aa50
lea rax, [rbp]
mov qword [rsp + 0x60], 2
sub rax, rsi
lea r15, [rsi + 8]
mov qword [rbp - 0x80], rax
mov r13, r10
mov rdi, qword [rbp - 0x80]
lea rax, [rbp + 8]
sub rax, rsi
sub r13, rsi
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x10]
sub rax, rsi
mov qword [rbp - 0x70], rax
lea rax, [rbp + 0x18]
mov r12, qword [rbp - 0x70]
sub rax, rsi
mov qword [rbp - 0x68], rax
lea rax, [rbp + 0x20]
sub rax, rsi
mov qword [rbp - 0x60], rax
lea rax, [rbp + 0x28]
sub rax, rsi
mov qword [rbp - 0x58], rax
lea rax, [rbp + 0x30]
sub rax, rsi
mov qword [rbp - 0x50], rax
lea rax, [rbp + 0x38]
sub rax, rsi
mov qword [rbp - 0x48], rax
lea rax, [rbp + 0x40]
sub rax, rsi
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x48]
sub rax, rsi
mov qword [rbp - 0x38], rax
lea rax, [rbp + 0x50]
sub rax, rsi
mov qword [rbp - 0x30], rax
lea rax, [rbp + 0x58]
sub rax, rsi
mov qword [rbp - 0x28], rax
lea rax, [rbp + 0x60]
sub rax, rsi
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x68]
sub rax, rsi
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x70]
sub rax, rsi
mov rsi, qword [rbp - 0x78]
mov qword [rbp - 0x10], rax
nop dword [rax]
movsd xmm0, qword [r15 + r13 - 8]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
movsd xmm1, qword [r15 + rdi - 8]
mulsd xmm0, xmm7
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 - 8], xmm1
movsd xmm0, qword [r15 + r13]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
movsd xmm1, qword [r15 + rdi]
mulsd xmm0, xmm7
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15], xmm1
movsd xmm0, qword [r15 + r13 + 8]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
movsd xmm1, qword [r15 + rsi]
mulsd xmm0, xmm7
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 8], xmm1
movsd xmm0, qword [r15 + r13 + 0x10]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
movsd xmm1, qword [r15 + r12]
mulsd xmm0, xmm7
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x10], xmm1
movsd xmm0, qword [r15 + r13 + 0x18]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x68]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x18], xmm1
movsd xmm0, qword [r15 + r13 + 0x20]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x60]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x20], xmm1
movsd xmm0, qword [r15 + r13 + 0x28]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x58]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x28], xmm1
movsd xmm0, qword [r15 + r13 + 0x30]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x50]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x30], xmm1
movsd xmm0, qword [r15 + r13 + 0x38]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x48]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x38], xmm1
movsd xmm0, qword [r15 + r13 + 0x40]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mulsd xmm0, xmm7
mov rax, qword [rbp - 0x40]
subsd xmm0, xmm8
movsd xmm1, qword [r15 + rax]
maxsd xmm1, xmm0
movsd qword [r15 + 0x40], xmm1
movsd xmm0, qword [r15 + r13 + 0x48]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x38]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x48], xmm1
movsd xmm0, qword [r15 + r13 + 0x50]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x30]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x50], xmm1
movsd xmm0, qword [r15 + r13 + 0x58]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x28]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x58], xmm1
movsd xmm0, qword [r15 + r13 + 0x60]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x20]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x60], xmm1
movsd xmm0, qword [r15 + r13 + 0x68]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x18]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x68], xmm1
movsd xmm0, qword [r15 + r13 + 0x70]
mulsd xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_log10
mov rax, qword [rbp - 0x10]
mulsd xmm0, xmm7
movsd xmm1, qword [r15 + rax]
subsd xmm0, xmm8
maxsd xmm1, xmm0
movsd qword [r15 + 0x70], xmm1
sub r15, 0xffffffffffffff80
sub qword [rsp + 0x60], 1
jne 0x18006ab90
mov rsi, qword [rsp + 0x58]
xor edi, edi
mov r12, qword [rsp + 0x68]
mov r15d, dword [rsp + 0x40]
jmp 0x18006a962
mov rax, qword [r9]
mov qword [r12], rax
jmp 0x18006aefd
cmp r14d, 0xcdd1
je 0x18006aeab
cmp r14d, 0xfce0
je 0x18006aef5
cmp r14d, 0x150e0
je 0x18006aeec
cmp r14d, 0x1a4e0
je 0x18006aee7
cmp r14d, 0x1f8e0
jne 0x18006aefd
mov rax, rbx
mov rcx, qword [rbp + 0x310]
xor rcx, rsp
call fcn.1800864a0
lea r11, [rsp + 0x450]
mov rbx, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rbx, r12
jmp 0x18006aefd
mov eax, dword [rsi]
mov dword [r12 + 0x10], eax
jmp 0x18006aefd
mov eax, dword [r10]
mov dword [r12 + 0x14], eax
lea eax, [r15 + r15*2]
shl eax, 5
add r14d, eax
cmp r14d, dword [rsp + 0x44]
jbe 0x18006a8d1
jmp 0x18006aeab
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, rdi
jmp 0x18006aeae
mov rdx, rsi
lea rcx, str.HostProfileCompleteConfigSpec
call fcn.180047050
int3
mov rdx, rsi
lea rcx, str.__TwoByteSeqStringSetChar_k_g_37__
call fcn.180047050
int3