Function at 0x10023999
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10068441
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0x6c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x44], 0xe51
mov dword [ebp - 0x4c], 0x100091a4
cmp dword [ebp - 0x44], 0x1089
jle 0x10023a43
and dword [ebp - 0x1c], 0
jmp 0x100239df
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x757a
jge 0x10023a3b
and dword [ebp - 0x20], 0
jmp 0x100239f5
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x25e4
jge 0x10023a39
and dword [ebp - 0x24], 0
jmp 0x10023a0b
mov eax, dword [ebp - 0x24]
inc eax
mov dword [ebp - 0x24], eax
cmp dword [ebp - 0x24], 0x4cef
jge 0x10023a37
mov eax, dword [ebp - 0x1c]
imul eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x24]
cdq
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], edx
push dword [ebp - 0x58]
push dword [ebp - 0x5c]
mov ecx, 0x106126b8
call fcn.1001b17a
jmp 0x10023a04
jmp 0x100239ee
jmp 0x100239d8
push 0
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp dword [ebp + 8], 0
je 0x10023a55
cmp dword [ebp + 0xc], 0
je 0x10023a55
cmp dword [ebp + 0x10], 0
jne 0x10023a5d
mov eax, dword [ebp + 8]
jmp 0x10023c2e
and dword [ebp - 4], 0
cmp dword [ebp - 0x44], 0xbd8
jge 0x10023a77
mov edx, dword [ebp - 0x4c]
mov ecx, 0x106126b8
call fcn.1001d6f2
jmp 0x10023a93
or dword [ebp - 4], 0xffffffff
jmp 0x10023a9d
mov eax, dword [ebp + 8]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x10]
shr eax, 2
mov dword [ebp - 0x40], eax
and dword [ebp - 0x38], 0
jmp 0x10023abf
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x38]
cmp eax, dword [ebp - 0x40]
jae 0x10023bef
mov dword [ebp - 0x48], 0x5c20
mov dword [ebp - 0x54], 0x100091f0
cmp dword [ebp - 0x48], 0x5db9
jle 0x10023b8f
and dword [ebp - 0x30], 0
jmp 0x10023af3
mov eax, dword [ebp - 0x30]
inc eax
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0x6f09
jge 0x10023b8f
and dword [ebp - 0x28], 0
jmp 0x10023b0d
mov eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0x73af
jge 0x10023b8a
and dword [ebp - 0x2c], 0
jmp 0x10023b23
mov eax, dword [ebp - 0x2c]
inc eax
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0x30cb
jge 0x10023b85
and dword [ebp - 0x34], 0
jmp 0x10023b39
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 0x1ebb
jge 0x10023b83
mov ecx, dword [ebp - 0x28]
sub ecx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x30]
shl eax, cl
or eax, dword [ebp - 0x34]
cdq
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], edx
push dword [ebp - 0x60]
push dword [ebp - 0x64]
lea ecx, [ebp - 0x7c]
call fcn.1000d8ea
pop ecx
pop ecx
mov dword [ebp - 0x50], eax
mov ecx, dword [ebp - 0x50]
call fcn.1001b15a
push eax
call fcn.10052776
pop ecx
lea ecx, [ebp - 0x7c]
call fcn.1001b150
jmp 0x10023b32
jmp 0x10023b1c
jmp 0x10023b06
jmp 0x10023aec
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ecx]
mov dword [eax], ecx
mov dword [ebp - 4], 2
cmp dword [ebp - 0x48], 0x5c09
jge 0x10023bb2
push dword [ebp - 0x54]
call fcn.10052776
pop ecx
jmp 0x10023bce
or dword [ebp - 4], 0xffffffff
jmp 0x10023bd8
mov eax, dword [ebp - 0x14]
add eax, 4
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
add eax, 4
mov dword [ebp - 0x18], eax
jmp 0x10023ab8
mov eax, dword [ebp + 0x10]
xor edx, edx
push 4
pop ecx
div ecx
mov dword [ebp - 0x40], edx
and dword [ebp - 0x3c], 0
jmp 0x10023c09
mov eax, dword [ebp - 0x3c]
inc eax
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x40]
jae 0x10023c2b
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x18]
mov cl, byte [ecx]
mov byte [eax], cl
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
jmp 0x10023c02
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret