Function at 0x14000b0c4
Capabilities:
Get file size

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x428]
sub rsp, 0x500
mov rax, qword [0x140016010]
xor rax, rsp
mov qword [rbp + 0x3f0], rax
mov esi, ecx
xor r13d, r13d
lea rcx, str.MAKEDIR
mov qword [rsp + 0x38], r13
mov r14, rdx
call fcn.14000e208
xor edx, edx
xor ecx, ecx
mov rbx, rax
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wgetcwd]
mov r8b, 0x42
mov rcx, rbx
mov rdx, rax
mov qword [rsp + 0x40], rax
mov r12, rax
call fcn.140001acc
lea r8, [0x140013ba0]
xor edx, edx
lea rcx, [rsp + 0x38]
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wdupenv_s]
mov rdi, qword [rsp + 0x38]
or r15, 0xffffffffffffffff
test rdi, rdi
je 0x14000b184
lea rax, str.MAKEFLAGS
mov rdx, r15
inc rdx
cmp word [rax + rdx*2], r13w
jne 0x14000b163
sub rdx, 9
lea rcx, [0x140016064]
mov r9, r15
mov r8, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcsncpy_s]
mov eax, 1
lea rcx, [0x140016064]
mov byte [0x1400167ed], al
call fcn.14000e208
lea rcx, [0x140013ba0]
mov rbx, rax
call fcn.14000e208
mov rcx, rax
mov r8b, 6
mov rdx, rbx
call fcn.140001acc
mov ebx, 1
test rdi, rdi
je 0x14000b1d7
movzx ecx, word [rdi]
test cx, cx
je 0x14000b1d7
mov dl, bl
call fcn.14000bde0
add rdi, 2
jne 0x14000b1c2
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea r9, str.NTMAKEENV
mov qword [rsp + 0x38], r13
xor r8d, r8d
lea rcx, [rsp + 0x48]
xor edx, edx
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wgetenv_s]
test eax, eax
jne 0x14000b217
movzx eax, byte [0x140037ced]
cmp qword [rsp + 0x48], r13
cmovne eax, ebx
mov byte [0x140037ced], al
lea rdx, [r14 + 8]
lea ecx, [rsi - 1]
call fcn.14000ba5c
cmp byte [0x140027488], r13b
jne 0x14000b231
call fcn.140004044
test byte [0x1400167ec], 2
jne 0x14000b311
call fcn.14000aee8
lea rcx, str.tools.ini
lea r8, [rsp + 0x50]
mov qword [0x140027490], rcx
lea rdx, str.INIT
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wsearchenv]
cmp word [rsp + 0x50], r13w
je 0x14000b311
mov r8d, 0x20
lea rdx, str.rt_ccsunicode
lea rcx, [rsp + 0x50]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfsopen]
mov qword [0x140027480], rax
test rax, rax
jne 0x14000b2a5
lea r8, [rsp + 0x50]
mov edx, 0x41d
xor ecx, ecx
call fcn.140003e48
int3
call fcn.1400079f0
test al, al
je 0x14000b2ee
mov r14d, 1
add dword [0x140026c20], r14d
mov byte [0x140027489], r14b
call fcn.14000c640
mov rcx, qword [0x140027480]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
cmp eax, r15d
jne 0x14000b317
mov r8, qword [0x140027490]
mov edx, 0x424
xor ecx, ecx
call fcn.140003e48
jmp 0x14000b317
mov rcx, qword [0x140027480]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
cmp eax, r15d
jne 0x14000b311
lea r8, [rsp + 0x50]
mov edx, 0x424
xor ecx, ecx
call fcn.140003e48
mov r14d, 1
lea rcx, [0x140016064]
call fcn.14000e208
mov rdx, rax
lea rcx, [0x140013ba0]
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll__wputenv_s]
test eax, eax
je 0x14000b343
mov edx, 0x41f
xor ecx, ecx
call fcn.140003e48
cmp qword [0x140037e80], r13
mov edi, 4
jne 0x14000b411
mov edx, edi
lea rcx, str.makefile
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__waccess]
test eax, eax
jne 0x14000b38c
call fcn.14000e19c
lea rcx, str.makefile
mov rbx, rax
call fcn.14000e208
mov qword [rbx + 8], rax
mov qword [0x140037e80], rbx
jmp 0x14000b411
mov rbx, qword [0x1400167f8]
test rbx, rbx
je 0x14000b3fc
mov rbx, qword [rbx + 8]
mov edx, edi
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__waccess]
test eax, eax
jne 0x14000b411
lea edx, [rax + 0x2e]
mov rcx, rbx
call qword [sym.imp.VCRUNTIME140.dll_wcsrchr]
test rax, rax
je 0x14000b3e2
lea rcx, [rbp + 0x1a0]
mov r9, rax
mov qword [rsp + 0x20], rcx
mov r8, rbx
lea rcx, [rsp + 0x50]
mov edx, 0x101
call fcn.14000d7dc
test rax, rax
jne 0x14000b411
mov rcx, qword [0x1400167f8]
mov rax, qword [rcx]
mov qword [0x1400167f8], rax
mov qword [0x140037e80], rcx
jmp 0x14000b411
test byte [0x1400167ec], r14b
jne 0x14000b411
mov edx, 0x428
xor ecx, ecx
call fcn.140003e48
call qword [sym.imp.api_ms_win_crt_environment_l1_1_0.dll___p__wenviron]
mov rbx, qword [rax]
mov rax, qword [rbx]
test rax, rax
je 0x14000b4e2
mov r12d, 0x3d
mov edx, r12d
mov rcx, rax
call qword [sym.imp.VCRUNTIME140.dll_wcschr]
mov rsi, rax
test rax, rax
je 0x14000b4c7
mov rcx, qword [rbx]
lea rdx, [0x140013ba0]
mov r8d, 8
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsnicmp]
test eax, eax
je 0x14000b4c7
mov word [rsi], r13w
mov rcx, qword [rbx]
cmp word [rcx], r13w
je 0x14000b4c7
call fcn.14000e208
mov rdi, rax
mov rdx, r15
inc rdx
cmp word [rax + rdx*2], r13w
jne 0x14000b476
add rdx, r14
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__wcsupr_s]
lea rcx, [rsi + 2]
call fcn.14000e208
mov r8b, 4
mov word [rsi], r12w
mov rdx, rax
mov byte [0x1400167ed], r13b
mov rcx, rdi
mov r14, rax
call fcn.140001acc
test al, al
jne 0x14000b4c7
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add rbx, 8
mov r14d, 1
mov rax, qword [rbx]
test rax, rax
jne 0x14000b42c
mov r12, qword [rsp + 0x40]
mov rbx, qword [0x140037e80]
test rbx, rbx
je 0x14000b61f
mov rcx, qword [rbx + 8]
cmp word [rcx], 0x2d
jne 0x14000b52a
cmp word [rcx + 2], r13w
jne 0x14000b52a
lea rcx, str.STDIN
call fcn.14000e208
xor ecx, ecx
mov qword [0x140027490], rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov qword [0x140027480], rax
jmp 0x14000b5c7
call fcn.14000e208
mov r8d, 0x20
mov qword [0x140027490], rax
lea rdx, str.rt_ccsunicode
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__wfsopen]
mov qword [0x140027480], rax
test rax, rax
jne 0x14000b572
mov r8, qword [0x140027490]
mov edx, 0x41c
xor ecx, ecx
call fcn.140003e48
mov rax, qword [0x140027480]
xor ecx, ecx
mov qword [rsp + 0x30], rcx
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__fileno]
mov ecx, eax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__get_osfhandle]
cmp rax, r15
je 0x14000b5c7
lea rdx, [rsp + 0x30]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileSizeEx]
test eax, eax
je 0x14000b5c7
mov r9, qword [rsp + 0x30]
inc r9
lea rax, [r9 - 2]
cmp rax, 0x7ffffffd
ja 0x14000b5c7
mov rcx, qword [0x140027480]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_setvbuf]
mov dword [0x140026c20], r13d
mov byte [0x140027489], r13b
call fcn.14000c640
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___acrt_iob_func]
mov rcx, qword [0x140027480]
cmp rcx, rax
je 0x14000b60c
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
cmp eax, r15d
jne 0x14000b60c
mov r8, qword [0x140027490]
mov edx, 0x424
xor ecx, ecx
call fcn.140003e48
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14000b4f2
mov rbx, qword [0x140037e80]
mov rcx, rbx
call fcn.140003524
mov dword [0x140026c24], r13d
call fcn.14000dd38
mov r15d, 1
test byte [0x1400167ec], r15b
je 0x14000b8ca
lea ecx, [r15 + 7]
call fcn.140003f70
lea rsi, [0x1400374d0]
mov rbx, qword [rsi]
jmp 0x14000b6a4
mov rax, qword [rbx + 0x10]
test rax, rax
je 0x14000b6a1
mov r8, qword [rax + 8]
test r8, r8
je 0x14000b6a1
mov rdx, qword [rbx + 8]
mov ecx, 0xe
call fcn.140003f70
mov rax, qword [rbx + 0x10]
mov rdi, qword [rax]
jmp 0x14000b69c
mov rdx, qword [rdi + 8]
test rdx, rdx
je 0x14000b699
lea rcx, str._t_t_s_n
call fcn.14000c568
mov rdi, qword [rdi]
test rdi, rdi
jne 0x14000b684
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14000b65b
add rsi, 8
lea rax, [0x140037cd0]
cmp rsi, rax
jl 0x14000b656
call fcn.14000c590
call fcn.14000c538
lea ecx, [rbx + 7]
call fcn.140003f70
mov rbx, qword [0x140026c00]
jmp 0x14000b72f
cmp byte [rbx + 0x28], r13b
lea rax, str._s::
mov rdx, qword [rbx + 0x10]
lea rcx, [0x140013cf8]
cmovne rcx, rax
call fcn.14000c568
mov ecx, 0xa
call fcn.140003f70
mov rdi, qword [rbx + 0x18]
test rdi, rdi
je 0x14000b727
lea rcx, [0x140013d00]
jmp 0x14000b716
lea rcx, str._t_t_t_s_n
mov rdx, qword [rdi + 8]
call fcn.14000c568
mov rdi, qword [rdi]
test rdi, rdi
jne 0x14000b70f
call fcn.14000c590
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14000b6d4
lea rdx, [0x1400126e0]
lea rcx, str._s:
call fcn.14000c568
mov rbx, qword [0x140026c18]
jmp 0x14000b763
mov rdx, qword [rbx + 8]
lea rcx, [0x140013cd0]
call fcn.14000c568
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14000b750
call fcn.14000c590
call fcn.14000c538
lea ecx, [rbx + 9]
call fcn.140003f70
lea r12, [0x140026800]
mov r13d, 0x80
mov rdi, qword [r12]
test rdi, rdi
je 0x14000b899
mov rax, qword [rdi + 0x20]
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov al, byte [rcx + 0x20]
lea rcx, str._s:_c
and al, 0x20
neg al
sbb r8d, r8d
and r8d, 0x1a
add r8d, 0x20
call fcn.14000c568
mov rax, qword [rdi + 8]
mov r14, qword [rdi + 0x20]
mov qword [0x140027458], rax
mov qword [0x140027470], rax
mov qword [0x140027478], rax
jmp 0x14000b87b
mov rsi, qword [r14 + 8]
mov ecx, 0xb
call fcn.140003f70
xor r15d, r15d
lea eax, [r15 + 1]
mov ebx, eax
test byte [rsi + 0x20], bl
je 0x14000b819
lea rcx, str.dinsb
movzx edx, word [rcx + r15*2]
lea rcx, str.__c
call fcn.14000c568
mov eax, 1
add r15d, eax
add ebx, ebx
cmp ebx, 0x10
jb 0x14000b7f7
mov rdx, qword [rsi + 8]
mov rcx, qword [rsi]
call fcn.14000c9d8
mov ecx, 0xa
call fcn.140003f70
mov rbx, qword [rsi + 0x10]
test rbx, rbx
je 0x14000b873
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x14000b869
lea rcx, [0x140013d00]
jmp 0x14000b864
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x14000b869
lea rcx, str._t_t_t_s_n
call fcn.14000c568
mov rbx, qword [rbx]
test rbx, rbx
jne 0x14000b854
jmp 0x14000b878
call fcn.14000c590
mov r14, qword [r14]
test r14, r14
jne 0x14000b7e0
mov rdi, qword [rdi]
call fcn.14000c590
test rdi, rdi
jne 0x14000b794
lea r15d, [r14 + 1]
add r12, 8
sub r13, r15
jne 0x14000b787
call fcn.14000c590
call fcn.14000c538
mov r12, qword [rsp + 0x40]
mov qword [0x140027458], r13
mov qword [0x140027470], r13
mov qword [0x140027478], r13
mov rcx, qword [0x1400374b8]
test rcx, rcx
je 0x14000b8dc
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [0x1400167f8]
mov rdi, rax
test rax, rax
je 0x14000ba1c
mov rcx, qword [rax + 8]
lea rdx, [0x1400125d4]
call qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_wcspbrk]
mov rcx, qword [0x1400167f8]
mov rcx, qword [rcx + 8]
test rax, rax
je 0x14000b9bd
lea r8, [rsp + 0x40]
lea rdx, [rsp + 0x50]
call fcn.140006a48
test rax, rax
je 0x14000b9a4
mov rcx, qword [0x1400167f8]
mov rdx, rax
mov rcx, qword [rcx + 8]
call fcn.14000facc
test byte [rsp + 0x50], 0x10
mov rsi, rax
je 0x14000b959
mov rcx, qword [rsp + 0x54]
test ecx, ecx
jne 0x14000b95e
mov rdx, rcx
shr rdx, 0x20
test edx, edx
jne 0x14000b95e
mov rcx, qword [rsp + 0x64]
mov dl, byte [0x1400167ee]
lea r8, [rsp + 0x30]
mov qword [rsp + 0x30], rcx
mov rcx, rsi
call fcn.140002070
mov rcx, rsi
mov ebx, eax
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
test ebx, ebx
jns 0x14000b98e
test byte [0x1400167ec], 8
jne 0x14000b9ff
mov rdx, qword [rsp + 0x40]
lea rcx, [rsp + 0x50]
call fcn.140006bd0
test rax, rax
jne 0x14000b928
jmp 0x14000b9df
mov r8, qword [0x1400167f8]
mov edx, 0x42d
xor ecx, ecx
mov r8, qword [r8 + 8]
call fcn.140003e48
jmp 0x14000b9df
mov dl, byte [0x1400167ee]
lea r8, [rsp + 0x30]
mov qword [rsp + 0x30], r13
call fcn.140002070
test eax, eax
jns 0x14000b9df
test byte [0x1400167ec], 8
jne 0x14000ba0d
mov rax, qword [rdi]
mov qword [0x1400167f8], rax
mov rax, qword [0x14003e0c0]
mov qword [rdi], rax
mov qword [0x14003e0c0], rdi
jmp 0x14000b8dc
mov rcx, rdi
call fcn.140003524
or rbx, 0xffffffffffffffff
jmp 0x14000ba1f
mov rcx, rdi
call fcn.140003524
mov ebx, 0xff
jmp 0x14000ba1f
mov ebx, r13d
mov rcx, r12
call qword [sym.imp.api_ms_win_crt_filesystem_l1_1_0.dll__wchdir]
mov eax, ebx
mov rcx, qword [rbp + 0x3f0]
xor rcx, rsp
call fcn.1400106c0
lea r11, [rsp + 0x500]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret