Function at 0x1800a3b70
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x410]
sub rsp, 0x510
movaps xmmword [rsp + 0x500], xmm6
mov rax, qword [0x1800f6ae8]
xor rax, rsp
mov qword [rbp + 0x3f0], rax
mov edi, dword [rsp + 0x48]
lea ebx, [r9 - 0xd]
mov r13, qword [rsp + 0x70]
mov r10, rcx
mov qword [rsp + 0x50], rcx
mov r11, r8
xor ecx, ecx
mov qword [rbp - 0x60], r8
mov r8, qword [rsp + 0x70]
mov eax, r9d
cmp r9d, ebx
mov dword [rsp + 0x34], ebx
mov ebx, dword [rsp + 0x48]
mov r14d, r9d
mov dword [rbp - 0x7c], r9d
mov qword [rsp + 0x58], rdx
mov dword [rbp - 0x80], eax
mov qword [rsp + 0x60], r8
jbe 0x1800a40fd
mov ecx, dword [rsp + 0x48]
lea rsi, [0x180000000]
movzx r9d, byte [rsp + 0x40]
mov r12d, dword [rsp + 0x48]
mov r15d, dword [rsp + 0x48]
movaps xmm6, xmmword [rbp - 0x50]
mov dword [rsp + 0x30], ecx
mov rcx, qword [rsp + 0x70]
mov qword [rsp + 0x38], rcx
mov rcx, qword [rsp + 0x70]
mov qword [rbp - 0x68], rcx
mov ecx, dword [rsp + 0x48]
mov dword [rsp + 0x44], ecx
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x6c], r9d
add eax, 0xfffffef1
lea r14, str.prog_install
cmp eax, 0x29
ja case.default.0x1800a3c61
movzx eax, byte [rsi + rax + 0xa45a0]
mov ecx, dword [rsi + rax*4 + 0xa4568]
add rcx, rsi
jmp rcx
mov rax, qword [r10]
mov r11d, 1
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x30], r11d
mov rax, qword [rax + 0x50]
mov qword [rbp - 0x70], rax
jmp 0x1800a40d4
movups xmm0, xmmword [rdx]
mov r9d, 0xb6
lea rdx, [rsp + 0x70]
mov r8, r10
lea rcx, [rbp - 0x30]
movaps xmmword [rsp + 0x70], xmm0
call fcn.180040e10
mov rdx, qword [rsp + 0x58]
movups xmm0, xmmword [rbp - 0x30]
mov r8, qword [rsp + 0x60]
movups xmmword [rdx], xmm0
jmp case.0x1800a3c61.284
test byte [r11], 1
je 0x1800a3d50
mov esi, 0x69
mov eax, esi
sub eax, 0x69
je 0x1800a3d10
sub eax, 1
je 0x1800a3d07
sub eax, 1
je 0x1800a3ced
cmp eax, 1
jne 0x1800a3d40
mov rax, qword [r10]
mov rcx, qword [rax + 0x20]
mov r15d, dword [rcx + 0x28]
shr r15d, 3
jmp 0x1800a3d40
mov rcx, qword [r10]
mov dword [rsp + 0x68], 1
mov rax, qword [rcx + 0x20]
mov r12d, dword [rax + 0x28]
imul r12d, dword [rcx + 0x30]
jmp 0x1800a3d40
mov rax, qword [r10]
mov r13, qword [rax + 0x48]
jmp 0x1800a3d40
mov rax, qword [r10]
cmp qword [rax + 0x48], 0
jne 0x1800a3d40
lea r8, [rsp + 0x48]
mov qword [rsp + 0x48], rax
mov edx, 0x1d
xor ecx, ecx
call fcn.180083950
mov rbx, rax
test eax, eax
jne 0x1800a4191
mov r10, qword [rsp + 0x50]
inc esi
cmp esi, 0x6d
jb 0x1800a3cc6
jmp 0x1800a3e1b
mov r14d, 0x9c
mov eax, r14d
sub eax, 0x9c
je 0x1800a3d9b
sub eax, 0x4d
je 0x1800a3d82
cmp eax, 0x4d
jne 0x1800a3e0a
mov rax, qword [r10]
mov rcx, qword [rax + 0x20]
mov r15d, dword [rcx + 0x20]
shr r15d, 3
jmp 0x1800a3e0a
mov rax, qword [r10]
mov rcx, qword [rax + 0x20]
mov r12d, dword [rax + 0x30]
mov edx, dword [rcx + 0x14]
imul r12d, dword [rcx + 0x20]
mov dword [rsp + 0x68], edx
jmp 0x1800a3e0a
mov rax, qword [r10]
cmp qword [rax + 0x50], 0
jne 0x1800a3e03
mov esi, 0x50
nop word [rax + rax]
cmp esi, 0x50
je 0x1800a3dc8
cmp esi, 0x1ef0
jne 0x1800a3df5
test ebx, ebx
je 0x1800a3df5
mov eax, ebx
jmp 0x1800a4191
mov rax, qword [r10]
lea rcx, [rsp + 0x48]
xor r9d, r9d
mov qword [rsp + 0x48], rax
xor edx, edx
mov qword [rsp + 0x20], 0
mov r8d, 0x11b
call fcn.1800b5c40
mov r10, qword [rsp + 0x50]
mov ebx, eax
add esi, 0x1ea0
cmp esi, 0x3d40
jbe 0x1800a3db0
mov rax, qword [r10]
mov r13, qword [rax + 0x50]
add r14d, 0x4d
cmp r14d, 0x183
jb 0x1800a3d56
test r12d, r12d
je 0x1800a3f5e
nop dword [rax]
nop dword [rax + rax]
mov esi, 5
mov r14d, 0x86
nop dword [rax + rax]
cmp esi, 5
ja case.default.0x1800a3e5c
lea rdx, [0x180000000]
mov eax, esi
mov ecx, dword [rdx + rax*4 + 0xa45cc]
add rcx, rdx
jmp rcx
cmp qword [rbp - 0x78], 0xffffffffffffffff
jne case.default.0x1800a3e5c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov eax, dword [rax]
jmp 0x1800a4191
movsxd rax, r15d
cmp qword [rbp - 0x78], rax
je 0x1800a3eb1
mov ecx, 0xb4
nop dword [rax]
nop dword [rax + rax]
mov eax, ecx
sub eax, 0xb3
je 0x1800a418f
cmp eax, 1
jne 0x1800a3ea7
mov edi, 0x7f2bb724
dec ecx
cmp ecx, 0xb2
ja 0x1800a3e90
lea eax, [r15*8]
mov qword [rbp - 0x40], r13
mov dword [rsp + 0x48], eax
lea r9, [rsp + 0x48]
mov eax, dword [rsp + 0x68]
lea rdx, [rbp - 0x40]
mov qword [rsp + 0x70], rax
lea rcx, [rsp + 0x70]
lea rax, [rbp - 0x10]
mov r8d, 0x110
mov qword [rsp + 0x20], rax
call fcn.180072d80
mov ebx, eax
jmp case.default.0x1800a3e5c
mov eax, r12d
mov r15d, 0x400
shr eax, 3
cmp eax, r15d
jae case.default.0x1800a3e5c
mov r15d, eax
jmp case.default.0x1800a3e5c
test ebx, ebx
jne 0x1800a3dc1
jmp case.default.0x1800a3e5c
mov eax, dword [rsp + 0x68]
lea eax, [rax + r15*8]
mov dword [rsp + 0x68], eax
lea eax, [r15*8]
sub r12d, eax
jmp case.default.0x1800a3e5c
mov rax, qword [rsp + 0x58]
lea rdx, [rbp - 0x10]
mov r8d, r15d
mov ecx, dword [rax]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__read]
cdqe
mov qword [rbp - 0x78], rax
dec r14d
dec esi
cmp r14d, 0x80
ja 0x1800a3e40
test r12d, r12d
jne 0x1800a3e30
mov rdx, qword [rsp + 0x58]
lea rsi, [0x180000000]
mov r8, qword [rsp + 0x60]
jmp case.0x1800a3c61.284
xor r8d, r8d
cmp qword [rbp - 0x50], r8
jne 0x1800a3fa0
mov r9d, 0xc8
mov qword [rsp + 0x20], r14
xor edx, edx
xor ecx, ecx
call fcn.1800a4b60
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
jmp case.0x1800a3c61.284
movups xmm0, xmmword [rdx]
lea rax, [rsp + 0x70]
mov edx, 0x11f
lea r9, [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm6
mov rcx, r10
movaps xmmword [rsp + 0x70], xmm0
mov qword [rsp + 0x20], rax
call fcn.18003cf50
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
jmp case.0x1800a3c61.284
mov ecx, dword [rsp + 0x34]
xor r9d, r9d
mov r11d, dword [rsp + 0x30]
mov qword [rsp + 0x38], r9
jmp 0x1800a40d9
movups xmm0, xmmword [rdx]
mov r9d, 0x52
mov qword [rsp + 0x20], r10
xor r8d, r8d
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x20]
movaps xmmword [rbp - 0x50], xmm0
call fcn.180079ae0
movaps xmm6, xmmword [rbp - 0x20]
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
movaps xmmword [rbp - 0x50], xmm6
jmp case.0x1800a3c61.284
cmp dword [r11], 0
je 0x1800a403a
mov rax, qword [rbp - 0x70]
cmp qword [rax], 0
jne case.0x1800a3c61.284
mov eax, 0xf
nop
cmp eax, 0xf
je 0x1800a40f3
add eax, 0x19
cmp eax, 0x28
jb 0x1800a4040
jmp case.0x1800a3c61.284
mov rax, qword [r10]
mov rcx, qword [rax + 0x20]
sub qword [rdx], rcx
jmp case.0x1800a3c61.284
mov eax, dword [r11]
btr eax, 0x1f
mov dword [r11], eax
cmp dword [r10 + 0x24], 0
je case.0x1800a3c61.284
cmp eax, dword [r10 + 0x28]
je 0x1800a407a
test eax, eax
jne case.0x1800a3c61.284
mov ecx, 0x98
nop
mov eax, ecx
sub eax, 0x97
je 0x1800a418f
cmp eax, 1
jne 0x1800a4094
xor edi, edi
dec ecx
cmp ecx, 0x96
ja 0x1800a4080
jmp case.0x1800a3c61.284
mov r9d, dword [r11]
xor ecx, ecx
shr r9d, 0x1f
mov dword [rsp + 0x6c], r9d
mov qword [rbp - 0x68], rcx
jmp case.0x1800a3c61.284
mov dword [rsp + 0x44], 0xffffffff
jmp case.0x1800a3c61.284
xor edi, edi
jmp case.0x1800a3c61.284
mov r8, qword [rbp - 0x70]
mov qword [rsp + 0x60], r8
mov ecx, dword [rsp + 0x34]
mov r11d, dword [rsp + 0x30]
mov r9, qword [rsp + 0x38]
mov eax, dword [rbp - 0x80]
mov r10, qword [rsp + 0x50]
dec eax
mov dword [rbp - 0x80], eax
cmp eax, ecx
jbe 0x1800a4120
mov r11, qword [rbp - 0x60]
jmp 0x1800a3c3a
mov eax, 1
jmp 0x1800a4191
mov r9, qword [rsp + 0x70]
movzx eax, byte [rsp + 0x40]
mov r11d, dword [rsp + 0x48]
mov qword [rsp + 0x38], r9
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0x30], r11d
mov dword [rsp + 0x44], ebx
jmp 0x1800a4132
mov r13, qword [rbp - 0x68]
xor ecx, ecx
mov ebx, dword [rsp + 0x44]
mov r14d, dword [rbp - 0x7c]
mov eax, dword [rsp + 0x6c]
imul r12d, r14d, 0x7df
mov esi, r14d
cmp r14d, r12d
ja 0x1800a418f
mov r14, qword [rsp + 0x70]
mov r15, qword [rsp + 0x70]
nop dword [rax + rax]
cmp esi, 0x16b3d
ja 0x1800a4380
je 0x1800a4326
cmp esi, 0xae48
ja 0x1800a42a5
je 0x1800a422d
mov eax, esi
sub eax, 0x11e
je 0x1800a4210
sub eax, 0xd
je 0x1800a41c3
cmp eax, 0xd
jne 0x1800a4527
mov eax, edi
mov rcx, qword [rbp + 0x3f0]
xor rcx, rsp
call fcn.1800d1090
mov rbx, qword [rsp + 0x568]
movaps xmm6, xmmword [rsp + 0x500]
add rsp, 0x510
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
cmp qword [r8], 0
je 0x1800a4527
nop dword [rax]
mov rdx, qword [rdx]
mov rcx, qword [r14 + 0x18]
mov r9, qword [r8]
mov qword [rsp + 0x38], r9
cmp rdx, rcx
jae 0x1800a41ea
lea r8, [r9 + 0x10]
jmp 0x1800a41fb
add rcx, qword [r14 + 0x20]
cmp rdx, rcx
jb 0x1800a4557
lea r8, [r9 + 8]
cmp qword [r8], 0
mov rdx, qword [rsp + 0x58]
mov qword [rsp + 0x60], r8
jne 0x1800a41d0
jmp 0x1800a4527
cmp dword [r10 + 0x24], 0
je 0x1800a4527
mov dword [r10 + 0x38], 3
mov eax, 0xffffffff
jmp 0x1800a4191
test byte [r10 + 0xe4], 4
jne 0x1800a4557
mov eax, dword [rdx]
cmp eax, 0xffffffff
jl 0x1800a424c
cmp eax, dword [r10 + 0x60]
jl 0x1800a4527
mov ebx, 0x35
mov eax, ebx
sub eax, 0x35
je 0x1800a4269
cmp eax, 1
jne 0x1800a4294
nop dword [rax]
mov eax, dword [rsp + 0x44]
jmp 0x1800a4191
mov r9d, dword [rdx]
lea r8, str.IPDL::PScreenManager::SendRefresh
mov eax, dword [r10 + 0x60]
mov edx, 1
mov rcx, r10
mov dword [rsp + 0x20], eax
call qword [r10 + 0x110]
mov r10, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x58]
inc ebx
cmp ebx, 0x37
jb 0x1800a4251
mov r9, qword [rsp + 0x38]
jmp 0x1800a4527
cmp esi, 0xb634
je 0x1800a431e
cmp esi, 0x15b72
jne 0x1800a4527
mov r11d, dword [r10 + 0x2c]
mov r8d, ecx
test r11d, r11d
jle 0x1800a4314
mov r9, qword [r10 + 0x30]
mov ebx, dword [rdx]
mov r10, r9
nop
cmp dword [r10], ebx
jne 0x1800a42fe
mov edx, 0x75
nop word [rax + rax]
mov eax, edx
sub eax, 0x74
je 0x1800a430a
cmp eax, 1
jne 0x1800a42f7
mov eax, r8d
lea rcx, [rax + rax*2]
lea r13, [r9 + rcx*4]
dec edx
cmp edx, 0x73
ja 0x1800a42e0
inc r8d
add r10, 0xc
cmp r8d, r11d
jl 0x1800a42d0
mov r10, qword [rsp + 0x50]
mov r9, qword [rsp + 0x38]
mov esi, 0x15b72
jmp 0x1800a4527
mov r15, r9
jmp 0x1800a4527
test r15, r15
je 0x1800a4376
xor r9d, r9d
xor edx, edx
mov rcx, r15
lea r8d, [r9 + 0x2e]
call fcn.1800ce1f0
mov rdx, qword [r14 + 0x18]
mov r15, rax
mov rax, qword [rsp + 0x58]
mov rcx, qword [r14 + 0x20]
add rcx, rdx
mov r8, qword [rax]
cmp rcx, r8
jbe 0x1800a4326
mov r11d, dword [rsp + 0x30]
mov rax, qword [rbp - 0x60]
mov eax, dword [rax]
add rax, r8
cmp rax, rdx
mov eax, 0
cmova r11d, eax
mov dword [rsp + 0x30], r11d
mov esi, 0x16b3d
jmp 0x1800a451d
cmp esi, 0x362f0
ja 0x1800a44c7
je 0x1800a4496
cmp esi, 0x2089c
je 0x1800a440d
cmp esi, 0x22046
je 0x1800a4560
cmp esi, 0x2b5c6
jne 0x1800a4527
test al, al
je 0x1800a43c6
dec dword [r10 + 0x12c]
mov dword [rsp + 0x44], ecx
jmp 0x1800a4527
mov edx, dword [rdx]
mov r9d, 2
mov rax, qword [r10 + 0x130]
mov qword [rsp + 0x28], 1
mov dword [rsp + 0x20], ecx
mov rcx, r10
lea edx, [rdx*4 + 0xa8]
lea r8d, [r9 + 1]
call qword [rax + 0x28]
mov r10, qword [rsp + 0x50]
mov r9, qword [rsp + 0x38]
mov dword [rsp + 0x44], eax
dec dword [r10 + 0x12c]
jmp 0x1800a4527
test r13, r13
je 0x1800a4419
cmp dword [r13 + 4], 0
jne 0x1800a4460
mov ebx, 0x3f
nop
mov eax, ebx
sub eax, 0x3d
je 0x1800a418f
sub eax, 1
je 0x1800a444a
cmp eax, 1
jne 0x1800a444f
lea r8, str.icudt51l_coll_nl_AW.res
mov edx, eax
mov rcx, r10
call qword [r10 + 0x110]
jmp 0x1800a444f
mov edi, 0xffffffff
mov r10, qword [rsp + 0x50]
dec ebx
cmp ebx, 0x3c
ja 0x1800a4420
mov r9, qword [rsp + 0x38]
cmp dword [r13 + 4], 1
jbe 0x1800a4522
mov ecx, 0x53
mov eax, ecx
sub eax, 0x53
je 0x1800a4482
cmp eax, 1
je 0x1800a418f
jmp 0x1800a448a
dec dword [r13 + 4]
xor eax, eax
mov edi, eax
inc ecx
cmp ecx, 0x55
jb 0x1800a4470
jmp 0x1800a4522
movsxd rax, dword [r10 + 0x2c]
cmp eax, 1
jle 0x1800a44bf
lea rcx, [rax + rax*2]
mov rax, qword [r10 + 0x30]
movsd xmm0, qword [rax + rcx*4 - 0xc]
movsd qword [r13], xmm0
mov eax, dword [rax + rcx*4 - 4]
mov dword [r13 + 8], eax
mov eax, dword [r10 + 0x2c]
dec eax
mov dword [r10 + 0x2c], eax
jmp 0x1800a4527
cmp esi, 0x4101a
je 0x1800a44dd
cmp esi, 0x4bd44
je 0x1800a4260
jmp 0x1800a4527
cmp dword [r10 + 0x2c], 0
jne 0x1800a4503
mov rcx, qword [r10 + 0x30]
test rcx, rcx
je 0x1800a4503
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov r10, qword [rsp + 0x50]
xor eax, eax
mov r9, qword [rsp + 0x38]
mov qword [r10 + 0x30], rax
test ebx, ebx
je 0x1800a4527
lea r8, str.double4___OVERLOADABLE___exp10_double4__
mov edx, 1
mov rcx, r10
call qword [r10 + 0x110]
mov r9, qword [rsp + 0x38]
mov r10, qword [rsp + 0x50]
imul eax, dword [rbp - 0x7c], 0x9b
add esi, eax
cmp esi, r12d
ja 0x1800a418f
mov rdx, qword [rsp + 0x58]
xor ecx, ecx
mov r8, qword [rsp + 0x60]
mov ebx, dword [rsp + 0x44]
mov r11d, dword [rsp + 0x30]
mov eax, dword [rsp + 0x6c]
jmp 0x1800a4150
xor eax, eax
jmp 0x1800a4191
mov eax, r11d
jmp 0x1800a4191