Function at 0x100080e0
Capabilities:
Get file attributes
Set file attributes

Disassembly:
push 0xffffffffffffffff
push 0x1004e950
mov eax, dword fs:[0]
push eax
sub esp, 0x30
mov eax, dword [0x1006b2c8]
xor eax, esp
mov dword [esp + 0x2c], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1006b2c8]
xor eax, esp
push eax
lea eax, [esp + 0x44]
mov dword fs:[0], eax
mov edi, ecx
xor esi, esi
cmp edi, esi
mov dword [esp + 0x14], edi
jne 0x10008126
lea eax, [esi + 0x57]
jmp 0x1000835b
push str.AddLanguageMonitor___Start
call fcn.10034080
mov eax, dword [edi]
add esp, 4
cmp eax, esi
mov dword [esp + 0x18], esi
je 0x10008347
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x10008144
sub eax, edx
sar eax, 1
je 0x10008347
xor bl, bl
mov dword [esp + 0x1c], esi
mov dword [esp + 0x20], esi
push esi
lea ecx, [esp + 0x20]
mov dword [esp + 0x50], esi
call fcn.10006740
test eax, eax
mov ebp, dword [esp + 0x20]
jne 0x100081a8
mov edi, dword [esp + 0x1c]
test edi, edi
jbe 0x100081a4
mov eax, dword [esp + 0x14]
mov ecx, dword [eax]
mov edx, dword [ebp + esi*4]
push ecx
push edx
call fcn.1003803f
add esp, 8
test eax, eax
je 0x100081a2
add esi, 1
cmp esi, edi
jb 0x10008181
jmp 0x100081a4
mov bl, 1
mov edi, dword [esp + 0x14]
test ebp, ebp
mov dword [esp + 0x4c], 0xffffffff
je 0x100081bd
push ebp
call fcn.10037e4b
add esp, 4
test bl, bl
jne 0x10008347
mov bl, 1
call fcn.10034d20
mov ebp, 8
cmp dword [eax + 0x15c], ebp
jb 0x100081e1
mov eax, dword [eax + 0x148]
jmp 0x100081e6
add eax, 0x148
push eax
lea ecx, [esp + 0x28]
call fcn.100018f0
push 0x5c
push 1
lea ecx, [esp + 0x2c]
mov dword [esp + 0x54], 1
call fcn.10001540
mov edx, dword [edi + 8]
mov eax, edx
lea esi, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x10008210
sub eax, esi
sar eax, 1
push eax
push edx
lea ecx, [esp + 0x2c]
call fcn.100015f0
cmp dword [esp + 0x3c], ebp
mov eax, dword [esp + 0x28]
jae 0x10008238
lea eax, [esp + 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
test al, 1
je 0x1000825c
mov ecx, dword [esp + 0x28]
and eax, 0xfffffffe
cmp dword [esp + 0x3c], ebp
jae 0x10008254
lea ecx, [esp + 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
cmp dword [esp + 0x3c], ebp
mov eax, dword [esp + 0x28]
jae 0x1000826a
lea eax, [esp + 0x28]
push 0
push 0x80
push 3
push 0
push 0
push 0xc0000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
cmp eax, 0xffffffff
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
je 0x100082ab
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [esp + 0x3c], ebp
mov eax, dword [esp + 0x28]
jae 0x100082a3
lea eax, [esp + 0x28]
push eax
push str....Monitor__s__is_not_used
jmp 0x100082ec
call esi
cmp eax, 0x20
je 0x100082d6
cmp eax, 0x21
je 0x100082d6
cmp dword [esp + 0x3c], ebp
mov ecx, dword [esp + 0x28]
jae 0x100082c5
lea ecx, [esp + 0x28]
push eax
push ecx
push str._CreateFile__s_:_Error__d__
call fcn.10033fe0
add esp, 0xc
jmp 0x100082f4
mov eax, dword [esp + 0x28]
xor bl, bl
cmp dword [esp + 0x3c], ebp
jae 0x100082e6
lea eax, [esp + 0x28]
push eax
push str....Monitor__s__is_used
call fcn.10033fe0
add esp, 8
cmp dword [esp + 0x3c], ebp
mov dword [esp + 0x4c], 0xffffffff
jb 0x1000830f
mov eax, dword [esp + 0x28]
push eax
call fcn.10036ea6
add esp, 4
xor eax, eax
test bl, bl
mov dword [esp + 0x3c], 7
mov dword [esp + 0x38], eax
mov word [esp + 0x28], ax
je 0x10008347
push edi
push 2
push eax
call sub.WINSPOOL.DRV_AddMonitorW
test eax, eax
jne 0x10008347
call esi
push eax
push str.AddMonitor_Error__d_
mov dword [esp + 0x20], eax
call fcn.10033fe0
add esp, 8
mov esi, dword [esp + 0x18]
push esi
push str.AddLanguageMonitor___End__d_
call fcn.10034080
add esp, 8
mov eax, esi
mov ecx, dword [esp + 0x44]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x2c]
xor ecx, esp
call fcn.1003754f
add esp, 0x3c
ret