Function at 0x14000d950
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [0x140042fb8]
lea rdx, [0x14003b918]
mov dword [rcx + 0x1436758], 0
add rcx, 0xbb0ee0
call fcn.140017b24
mov rdi, rax
test rax, rax
je 0x14000e18e
mov rbx, qword [0x140042fb8]
xor edx, edx
mov r8d, 0x18000
lea rcx, [rbx + 0x141b560]
call fcn.140015200
mov edx, 0x80
lea rcx, [rbx + 0x141b560]
mov r9, rdi
lea r8d, [rdx - 0x7f]
call fcn.14001fd0c
mov rcx, rdi
call fcn.1400180a4
mov rdx, qword [0x140042fb8]
cmp byte [rdx + 0x141b560], 0x42
jne 0x14000e18e
cmp byte [rdx + 0x141b561], 0x48
jne 0x14000e18e
cmp byte [rdx + 0x141b562], 0x32
jne 0x14000e18e
cmp byte [rdx + 0x141b563], 0x2c
jne 0x14000e18e
movsd xmm1, qword [0x14003ccb0]
mov dword [rdx + 0x1436758], 1
movzx eax, byte [rdx + 0x141b564]
mov dword [rdx + 0x14366f0], eax
movzx eax, byte [rdx + 0x141b565]
add eax, 0x64
mov dword [rdx + 0x14366d4], eax
movzx eax, byte [rdx + 0x141b566]
mov dword [rdx + 0x14366d0], eax
movzx eax, byte [rdx + 0x141b567]
mov dword [rdx + 0x14366cc], eax
movzx eax, byte [rdx + 0x141b568]
mov dword [rdx + 0x14366c8], eax
movzx eax, byte [rdx + 0x141b569]
mov dword [rdx + 0x14366c4], eax
movzx eax, byte [rdx + 0x141b56a]
mov dword [rdx + 0x14366c0], eax
movzx eax, word [rdx + 0x141b56b]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008a0], xmm0
movzx eax, word [rdx + 0x141b56d]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008a8], xmm0
movzx eax, word [rdx + 0x141b56f]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008b0], xmm0
movzx eax, word [rdx + 0x141b571]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008b8], xmm0
movzx eax, word [rdx + 0x141b573]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008c0], xmm0
movzx eax, word [rdx + 0x141b575]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008c8], xmm0
movzx eax, word [rdx + 0x141b577]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008d0], xmm0
movzx eax, word [rdx + 0x141b579]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008d8], xmm0
movzx eax, word [rdx + 0x141b57b]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008e0], xmm0
movzx eax, word [rdx + 0x141b57d]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008e8], xmm0
movzx eax, word [rdx + 0x141b57f]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008f0], xmm0
movzx eax, word [rdx + 0x141b581]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6008f8], xmm0
movzx eax, word [rdx + 0x141b583]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600960], xmm0
movzx eax, word [rdx + 0x141b585]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600968], xmm0
movzx eax, word [rdx + 0x141b587]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600970], xmm0
movzx eax, word [rdx + 0x141b589]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600978], xmm0
movzx eax, word [rdx + 0x141b58b]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600980], xmm0
movzx eax, word [rdx + 0x141b58d]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600988], xmm0
movzx eax, word [rdx + 0x141b58f]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600990], xmm0
movzx eax, word [rdx + 0x141b591]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x600998], xmm0
movzx eax, word [rdx + 0x141b593]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6009a0], xmm0
movzx eax, word [rdx + 0x141b595]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6009a8], xmm0
movzx eax, word [rdx + 0x141b597]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6009b0], xmm0
movzx eax, word [rdx + 0x141b599]
sub eax, 0x8000
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm1
movsd qword [rdx + 0x6009b8], xmm0
mov eax, dword [rdx + 0x14366f0]
test eax, eax
jne 0x14000df44
movzx eax, byte [rdx + 0x141b59c]
movzx ecx, byte [rdx + 0x141b59d]
movsd xmm2, qword [0x14003ccc0]
shl ecx, 8
add ecx, eax
movzx eax, byte [rdx + 0x141b59b]
shl ecx, 8
add ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 0x18], xmm0
movzx eax, word [rdx + 0x141b59e]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 0x20], xmm0
movzx eax, word [rdx + 0x141b5a0]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
divsd xmm1, xmm2
movsd qword [rdx + 0x14366a0], xmm1
movzx eax, word [rdx + 0x141b5a2]
mov dword [rdx + 0x50], eax
movzx eax, byte [rdx + 0x141b5a4]
mov dword [rdx + 0x5c], eax
movzx eax, byte [rdx + 0x141b5a5]
mov dword [rdx + 0x58], eax
movsx eax, byte [rdx + 0x141b5a6]
mov dword [rdx + 0x14365c0], eax
movzx eax, byte [rdx + 0x141b5a7]
mov dword [rdx + 0x14365b8], eax
movzx eax, byte [rdx + 0x141b5a8]
mov dword [rdx + 0x14365b4], eax
movsx eax, byte [rdx + 0x141b5a9]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [rdx + 0x78], xmm0
movzx eax, word [rdx + 0x141b5aa]
mov dword [rdx + 0x14365b0], eax
movzx eax, byte [rdx + 0x141b57c]
lea ecx, [rax + rax*2]
mov dword [rdx + 0x1436700], ecx
movzx eax, word [rdx + 0x141b5ad]
add eax, 0x11170
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 0x14365d8], xmm0
movzx eax, word [rdx + 0x141b5af]
mov dword [rdx + 0x14], eax
movzx eax, byte [rdx + 0x141b5b1]
add eax, eax
mov dword [rdx + 0x10], eax
movzx eax, byte [rdx + 0x141b5b3]
movzx ecx, byte [rdx + 0x141b5b4]
shl ecx, 8
add ecx, eax
movzx eax, byte [rdx + 0x141b5b2]
shl ecx, 8
add ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 8], xmm0
movzx eax, byte [rdx + 0x141b5b6]
movzx ecx, byte [rdx + 0x141b5b7]
shl ecx, 8
add ecx, eax
movzx eax, byte [rdx + 0x141b5b5]
shl ecx, 8
add ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 0x14365a8], xmm0
movzx eax, byte [rdx + 0x141b5b8]
mov dword [rdx + 0x1436688], eax
movzx eax, word [rdx + 0x141b5b9]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 0x88], xmm0
movzx eax, byte [rdx + 0x141b5bb]
mov dword [rdx + 0x1436644], eax
movzx eax, byte [rdx + 0x141b5bc]
mov dword [rdx + 0x14366e8], eax
call fcn.14000a980
jmp 0x14000e0b0
cmp eax, 1
jne 0x14000e0b7
movzx eax, word [rdx + 0x141b59b]
movsd xmm2, qword [0x14003ccc0]
add eax, 0x11170
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 0x14365d8], xmm0
movzx eax, word [rdx + 0x141b59d]
mov dword [rdx + 0x14], eax
movzx eax, byte [rdx + 0x141b5a0]
movzx ecx, byte [rdx + 0x141b5a1]
shl ecx, 8
add ecx, eax
movzx eax, byte [rdx + 0x141b59f]
shl ecx, 8
add ecx, eax
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 8], xmm0
movzx eax, byte [rdx + 0x141b5a2]
add eax, eax
mov dword [rdx + 0x10], eax
movzx eax, word [rdx + 0x141b5a3]
mov dword [rdx], eax
cmp eax, 0x100
ja 0x14000dfd4
cmp dword [rdx + 0x50], 0x100
jle 0x14000dfd7
mov dword [rdx + 0x50], eax
movzx eax, byte [rdx + 0x141b5a5]
mov dword [rdx + 0x6c], eax
movzx eax, word [rdx + 0x141b5a6]
mov dword [rdx + 0x1436700], eax
movsx eax, byte [rdx + 0x141b5a8]
mov dword [rdx + 0x14365c0], eax
movzx eax, byte [rdx + 0x141b5a9]
mov dword [rdx + 0x14365b8], eax
movzx eax, byte [rdx + 0x141b5aa]
mov dword [rdx + 0x14365b4], eax
movzx eax, word [rdx + 0x141b5ab]
mov dword [rdx + 0x14365b0], eax
movsx eax, byte [rdx + 0x141b5ad]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
movsd qword [rdx + 0x70], xmm0
movsx eax, byte [rdx + 0x141b5ae]
movd xmm1, eax
cvtdq2pd xmm1, xmm1
movsd qword [rdx + 0x78], xmm1
movzx eax, byte [rdx + 0x141b5af]
mov dword [rdx + 0x1436688], eax
movzx eax, word [rdx + 0x141b5b0]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
divsd xmm0, xmm2
movsd qword [rdx + 0x88], xmm0
movzx eax, word [rdx + 0x141b5b2]
mov dword [rdx + 0x50], eax
movzx eax, byte [rdx + 0x141b5b4]
mov dword [rdx + 0x5c], eax
movzx eax, byte [rdx + 0x141b5b5]
mov dword [rdx + 0x58], eax
movzx eax, byte [rdx + 0x141b5b6]
mov dword [rdx + 0x1436644], eax
movzx eax, byte [rdx + 0x141b5b7]
mov dword [rdx + 0x14366e8], eax
call qword [sym.imp.mr12e.dll_CalcMeterPerBin]
mov rdx, qword [0x140042fb8]
call fcn.14000b3b0
or dword [rdx + 0xbb0b44], 8
xor ebx, ebx
test byte [rdx + 0xbb0b44], 8
je 0x14000e0f6
test dword [rdx + 0xbb0b48], 0x100000
jne 0x14000e0f6
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rdx, qword [0x140042fb8]
inc ebx
cmp ebx, 0xbb8
jl 0x14000e0c5
mov dword [rdx + 0x1436648], 0
call fcn.14000e1a0
mov rcx, qword [0x140042fb8]
mov dword [rcx + 0x1436754], eax
or dword [rcx + 0xbb0b44], 0x40
xor ebx, ebx
nop dword [rax + rax]
test byte [rcx + 0xbb0b44], 0x40
je 0x14000e153
test dword [rcx + 0xbb0b48], 0x100000
jne 0x14000e153
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
inc ebx
cmp ebx, 0xbb8
jge 0x14000e153
mov rcx, qword [0x140042fb8]
jmp 0x14000e120
call fcn.140009a20
mov rax, qword [0x140042fb8]
cmp dword [rax + 0x1436618], 2
mov dword [rax + 0x143661c], 0
mov dword [rax + 0x143674c], 1
jne 0x14000e181
call fcn.14000b0e0
xor eax, eax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov rbx, qword [rsp + 0x30]
mov eax, 0xffffffff
add rsp, 0x20
pop rdi
ret