Function at 0x18003c8e0
Capabilities:
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xa0]
sub rsp, 0x1a0
mov rax, qword [0x1800f6ae8]
xor rax, rsp
mov qword [rbp + 0x98], rax
mov edi, dword [rsp + 0x3c]
mov r11, rdx
mov ebx, dword [rsp + 0x3c]
mov r13d, ecx
imul r12d, ecx, 0x1a4
mov esi, ecx
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x60], rdx
mov dword [rsp + 0x34], ecx
mov qword [rsp + 0x58], rdi
cmp ecx, r12d
ja 0x18003cb67
mov rax, qword [rsp + 0x40]
mov edx, 0x47
mov r14d, dword [rsp + 0x48]
mov r15, qword [rsp + 0x40]
mov qword [rsp + 0x50], rax
lea ecx, [rdx + 0x2b]
lea r9d, [rdx + 0x2e]
lea r10d, [rdx + 0x1e]
nop word [rax + rax]
cmp esi, 0x3c0a
ja 0x18003ca7a
je 0x18003ca6e
cmp esi, 0x1464
ja 0x18003ca20
je 0x18003ca08
mov eax, esi
sub eax, 0x91
je 0x18003c9fc
sub eax, 0x11
je 0x18003c9b2
cmp eax, 0x78
jne 0x18003cae7
mov r14d, dword [r8]
mov r15, r11
jmp 0x18003cae7
mov rax, qword [r11 + 0x60]
lea r8, [rsp + 0x58]
mov qword [rsp + 0x50], rax
mov rdx, r11
inc rax
mov ecx, 0xd7
mov qword [rsp + 0x58], rax
call fcn.180014510
mov r11, qword [rsp + 0x60]
mov ecx, 0x72
mov r8, qword [rsp + 0x40]
mov rdi, rax
mov qword [rsp + 0x58], rax
lea edx, [rcx - 0x2b]
lea r9d, [rcx + 3]
lea r10d, [rcx - 0xd]
jmp 0x18003cae7
mov word [rbp + 0x80], dx
jmp 0x18003cae7
mov eax, 0x6f
mov word [rbp + 0x81], cx
mov word [rbp + 0x82], ax
jmp 0x18003cae7
cmp esi, 0x27a8
je 0x18003ca41
cmp esi, 0x2837
jne 0x18003cae7
mov word [rbp + 0x83], r9w
jmp 0x18003cae7
test r14d, r14d
jle 0x18003ca67
nop word [rax + rax]
movzx eax, byte [r15]
inc r15
test al, al
jne 0x18003cb60
dec r14d
test r14d, r14d
jg 0x18003ca50
mov ebx, 1
jmp 0x18003cae7
mov dword [rbp + 0x84], 0x73654470
jmp 0x18003cae7
cmp esi, 0x4e36
je 0x18003ccce
cmp esi, 0x4fdd
je 0x18003cad6
cmp esi, 0x63b0
je 0x18003cabe
cmp esi, 0x7783
je 0x18003cab0
cmp esi, 0x8b56
jne 0x18003cae7
mov word [rbp + 0x92], r10w
jmp 0x18003cae7
mov eax, 0x6e
mov word [rbp + 0x91], ax
jmp 0x18003cae7
mov eax, 0x69
mov word [rbp + 0x8d], ax
mov dword [rbp + 0x8e], 0x696c64
jmp 0x18003cae7
mov dword [rbp + 0x88], 0x476e6769
mov word [rbp + 0x8c], cx
imul eax, r13d, 0x23
add esi, eax
cmp esi, r12d
jbe 0x18003c970
mov rdx, qword [rsp + 0x50]
lea r10d, [r13 - 0xb]
mov dword [rsp + 0x38], r10d
cmp r13d, r10d
jbe 0x18003ccce
mov rsi, qword [rsp + 0x40]
lea r10d, [r13 - 0x8a]
mov r13, qword [rsp + 0x40]
lea r9, [0x180000000]
movzx r14d, byte [rsp + 0x30]
movzx r15d, byte [rsp + 0x30]
movzx r12d, byte [rsp + 0x30]
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x34]
mov dword [rsp + 0x3c], r10d
cmp r10d, 0x18
ja case.default.0x18003cb59
mov ecx, dword [r9 + r10*4 + 0x3cd88]
add rcx, r9
jmp rcx
xor eax, eax
jmp 0x18003ccd0
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x50], rdx
jmp 0x18003cafb
cmp qword [r11 + 0x18], 0x10
mov r9, r11
jb 0x18003cb80
mov r9, qword [r11]
cmp r13, qword [r11 + 0x10]
jae 0x18003cc5e
movzx edi, byte [rsp + 0x30]
nop
mov r8d, 0x10b
cmp r8d, 0x1ad
ja 0x18003cbe3
je 0x18003cbce
mov eax, r8d
sub eax, 0x10b
je 0x18003cbc9
sub eax, 0x36
je 0x18003cbbf
cmp eax, 0x36
jne 0x18003cc14
movzx eax, r14b
movzx edi, byte [rax + rsi]
jmp 0x18003cc14
movzx eax, r14b
add r15b, byte [rax + rsi]
jmp 0x18003cc14
inc r14b
jmp 0x18003cc14
movzx edx, r15b
movzx ecx, r14b
movzx eax, byte [rdx + rsi]
mov byte [rcx + rsi], al
mov byte [rdx + rsi], dil
jmp 0x18003cc14
mov eax, r8d
sub eax, 0x1e3
je 0x18003cc03
cmp eax, 0x36
jne 0x18003cc14
movzx eax, r12b
movzx ecx, byte [rax + rsi]
xor byte [r9 + r13], cl
inc r13
jmp 0x18003cc14
movzx ecx, r15b
movzx eax, r14b
movzx r12d, byte [rcx + rsi]
add r12b, byte [rax + rsi]
add r8d, 0x36
cmp r8d, 0x24f
jb 0x18003cb96
mov byte [rsp + 0x30], dil
cmp r13, qword [r11 + 0x10]
jb 0x18003cb90
mov rdi, qword [rsp + 0x58]
jmp 0x18003cc5e
mov eax, 0x73
xor r13d, r13d
mov word [rbp + 0x93], ax
jmp case.0x18003cb59.8
lea rcx, [rbp + 0x80]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov r10d, dword [rsp + 0x3c]
lea r9, [0x180000000]
mov eax, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x34]
dec ecx
dec r10d
mov dword [rsp + 0x34], ecx
mov dword [rsp + 0x3c], r10d
cmp ecx, eax
jbe 0x18003ccce
mov r11, qword [rsp + 0x60]
mov r8, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x50]
jmp 0x18003cb44
mov byte [rbp + 0x70], r14b
jmp case.0x18003cb59.8
movzx eax, byte [r8]
mov rcx, qword [r11 + 0x50]
mov byte [rdx + rcx], al
inc rdx
mov qword [rsp + 0x50], rdx
mov qword [r11 + 0x60], rdx
jmp case.0x18003cb59.8
mov byte [rbp + 0x71], r15b
jmp case.0x18003cb59.8
mov eax, 0x120
nop dword [rax]
cmp eax, 0x120
je 0x18003ccfa
cmp eax, 0x1560
jne 0x18003ccfc
mov eax, ebx
mov rcx, qword [rbp + 0x98]
xor rcx, rsp
call fcn.1800d1090
mov rbx, qword [rsp + 0x1e0]
add rsp, 0x1a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
xor ebx, ebx
add eax, 0x1440
cmp eax, 0x2880
jbe 0x18003ccc0
lea rsi, [rsp + 0x70]
jmp case.0x18003cb59.8
test edi, edi
je case.0x18003cb59.8
mov eax, 0x10a
nop
cmp eax, 0x10a
je 0x18003cd30
cmp eax, 0x532
je 0x18003ccce
jmp 0x18003cd32
mov ebx, edi
add eax, 0x428
cmp eax, 0x850
jbe 0x18003cd20
jmp case.0x18003cb59.8
cmp qword [r8 + 0x18], 0x10
mov rcx, r8
jb 0x18003cd50
mov rcx, qword [r8]
mov eax, dword [r8 + 0x10]
lea rdx, [rsp + 0x48]
lea r8, [rsp + 0x70]
mov dword [rsp + 0x48], eax
xor r9d, r9d
mov dword [rsp + 0x20], 0x56
call fcn.1800694e0
jmp 0x18003cc59
movzx r14d, byte [rbp + 0x70]
movzx r15d, byte [rbp + 0x71]
jmp case.0x18003cb59.8