Function at 0x41b51f
Capabilities:
Get file size

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x54
and dword [ebp - 8], 0
push str.ADVAPI32.DLL
call fcn.0041b768
pop ecx
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x41b3cf
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_load_ADVAPI32.DLL
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b68c
push str.InitializeAcl
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x1c], eax
push str.AllocateAndInitializeSid
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x14], eax
push str.GetLengthSid
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x20], eax
push str.AddAccessAllowedAce
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x28], eax
push str.InitializeSecurityDescriptor
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x18], eax
push str.SetSecurityDescriptorDacl
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x10], eax
push str.SetSecurityDescriptorOwner
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0x24], eax
push str.SetKernelObjectSecurity
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0x1c], 0
je 0x41b487
cmp dword [ebp - 0x14], 0
je 0x41b487
cmp dword [ebp - 0x20], 0
je 0x41b487
cmp dword [ebp - 0x28], 0
je 0x41b487
cmp dword [ebp - 0x18], 0
je 0x41b487
cmp dword [ebp - 0x10], 0
je 0x41b487
cmp dword [ebp - 0x24], 0
je 0x41b487
cmp dword [ebp - 0xc], 0
jne 0x41b4a7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_get_API_pointers
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b683
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 0
jne 0x41b4d6
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.Failed_to_get_handle_of_current_process
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b683
and dword [ebp - 0x4c], 0
and dword [ebp - 0x44], 0
mov byte [ebp - 0x54], 0
mov byte [ebp - 0x53], 0
mov byte [ebp - 0x52], 0
mov byte [ebp - 0x51], 0
mov byte [ebp - 0x50], 0
mov byte [ebp - 0x4f], 5
and dword [ebp - 0x48], 0
lea eax, [ebp - 0x48]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0
push 0x12
push 1
lea eax, [ebp - 0x54]
push eax
call dword [ebp - 0x14]
test eax, eax
jne 0x41b53b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_get_SID
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b683
mov dword [ebp - 0x44], 0x10
push dword [ebp - 0x48]
call dword [ebp - 0x20]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x44], eax
push dword [ebp - 0x44]
call fcn.0041a65d
pop ecx
mov dword [ebp - 0x4c], eax
push 2
push dword [ebp - 0x44]
push dword [ebp - 0x4c]
call dword [ebp - 0x1c]
test eax, eax
jne 0x41b589
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_initialize_ACL
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b671
push dword [ebp - 0x48]
push 0x10000000
push 2
push dword [ebp - 0x4c]
call dword [ebp - 0x28]
test eax, eax
jne 0x41b5bd
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_add_ACE
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b671
push 1
lea eax, [ebp - 0x40]
push eax
call dword [ebp - 0x18]
test eax, eax
jne 0x41b5ea
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_initialize_absolute_SD
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b671
push 0
push dword [ebp - 0x4c]
push 1
lea eax, [ebp - 0x40]
push eax
call dword [ebp - 0x10]
test eax, eax
jne 0x41b619
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_insert_DACL_into_SD
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b671
push 0
push dword [ebp - 0x48]
lea eax, [ebp - 0x40]
push eax
call dword [ebp - 0x24]
test eax, eax
jne 0x41b646
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_set_owner_of_SD
push 1
call fcn.0041a819
add esp, 0xc
jmp 0x41b671
lea eax, [ebp - 0x40]
push eax
push 4
push dword [ebp - 0x2c]
call dword [ebp - 0xc]
test eax, eax
jne 0x41b671
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 8], eax
push dword [ebp - 8]
push str.ChangeDacl_:_Failed_to_set_SD_on_Process
push 1
call fcn.0041a819
add esp, 0xc
push dword [ebp - 0x48]
call dword [sym.imp.ADVAPI32.dll_FreeSid]
push dword [ebp - 0x4c]
call fcn.0041efe8
pop ecx
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [ebp - 8]
leave
ret