Function at 0x44c358
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
mov edx, dword [0x513981]
mov ecx, 3
push eax
add esp, 0xffffff4c
mov eax, dword [0x51397c]
push ebx
push esi
push edi
mov edi, dword [ebp + 0x10]
mov esi, dword [ebp + 0x18]
mov dword [ebp - 0x14], eax
mov al, byte [0x513980]
mov byte [ebp - 0x10], al
mov dword [ebp - 0x18], edx
push esi
push edi
lea edi, [ebp - 0x28]
mov esi, 0x513985
rep movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
pop edi
pop esi
push esi
push edi
lea edi, [ebp - 0x10b4]
mov esi, 0x513992
mov ecx, 0x20
rep movsd dword es:[edi], dword [esi]
pop edi
pop esi
push 0x2100
push edi
call fcn.00405b9c
add esp, 8
test eax, eax
jne 0x44c3d2
mov eax, 0xffffff92
jmp 0x44c5eb
mov edx, dword [ebp + 8]
push edx
call fcn.0044c288
pop ecx
mov ebx, eax
test ebx, ebx
jne 0x44c3ec
mov eax, 0xffffff9c
jmp 0x44c5eb
mov edx, dword [ebp + 0xc]
test edx, edx
je 0x44c41f
mov ecx, dword [ebp + 0xc]
push esi
push edi
mov edi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea esi, [ebp - 0x10b4]
xchg edi, esi
mov edx, ecx
mov eax, edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
lea eax, [ebp - 0x10b4]
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x30], edx
mov dword [ebp - 0x2c], ecx
test esi, 0x100
je 0x44c440
lea eax, [ebp - 0x14]
mov dword [ebp - 0x2c], eax
test esi, 0x200
je 0x44c44e
lea edx, [ebp - 0x18]
mov dword [ebp - 0x2c], edx
test esi, 0x400
je 0x44c45c
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x2c], ecx
test esi, 0x1000
je 0x44c46b
mov dword [ebp - 0x30], 0x5d36fe
test esi, 0x4000
jne 0x44c494
lea eax, [ebp - 0x34]
push eax
push 1
push ebx
call sub.WINSPOOL.DRV_StartDocPrinterA
test eax, eax
jne 0x44c494
push ebx
call fcn.0044c29c
pop ecx
mov eax, 0xffffff88
jmp 0x44c5eb
test esi, 0x2000
je 0x44c4b7
push ebx
call sub.WINSPOOL.DRV_StartPagePrinter
test eax, eax
jne 0x44c4b7
push ebx
call fcn.0044c29c
pop ecx
mov eax, 0xffffff83
jmp 0x44c5eb
push 5
push edi
call fcn.00403da4
add esp, 8
mov dword [ebp - 4], eax
lea edx, [ebp - 4]
push edx
call fcn.00403e40
pop ecx
test eax, eax
jne 0x44c4e1
push 1
push edi
call fcn.00403da4
add esp, 8
mov dword [ebp - 4], eax
lea ecx, [ebp - 4]
push ecx
call fcn.00403e40
pop ecx
test eax, eax
jne 0x44c500
push ebx
call fcn.0044c29c
pop ecx
mov eax, 0xffffff7e
jmp 0x44c5eb
mov edx, dword [ebp - 4]
push edx
call fcn.00403f14
pop ecx
mov dword [ebp - 8], eax
mov ecx, dword [ebp + 0x14]
mov eax, dword [ebp - 8]
cmp ecx, eax
ja 0x44c588
mov edx, dword [ebp + 0x14]
push edx
mov ecx, dword [ebp - 4]
push ecx
call fcn.00403fa4
add esp, 8
lea eax, [ebp - 8]
push 0
push eax
lea edx, [ebp - 0x1034]
push 0x1000
push edx
mov ecx, dword [ebp - 4]
push ecx
call sub.KERNEL32.dll_ReadFile
mov eax, dword [ebp - 8]
test eax, eax
je 0x44c588
lea edx, [ebp - 0xc]
lea eax, [ebp - 0x1034]
push edx
mov ecx, dword [ebp - 8]
push ecx
push eax
push ebx
call sub.WINSPOOL.DRV_WritePrinter
test eax, eax
jne 0x44c57d
lea edx, [ebp - 4]
push edx
call fcn.00403e78
pop ecx
mov dword [ebp - 4], eax
push ebx
call fcn.0044c29c
pop ecx
mov eax, 0xffffff74
jmp 0x44c5eb
mov edx, dword [ebp - 8]
cmp edx, 0x1000
je 0x44c527
lea ecx, [ebp - 4]
push ecx
call fcn.00403e78
pop ecx
mov dword [ebp - 4], eax
test esi, 0x2000
je 0x44c5b5
push ebx
call sub.WINSPOOL.DRV_EndPagePrinter
test eax, eax
jne 0x44c5b5
push ebx
call fcn.0044c29c
pop ecx
mov eax, 0xffffff6f
jmp 0x44c5eb
test esi, 0x4000
jne 0x44c5e2
push ebx
call sub.WINSPOOL.DRV_EndDocPrinter
test eax, eax
jne 0x44c5e2
lea edx, [ebp - 4]
push edx
call fcn.00403e78
pop ecx
mov dword [ebp - 4], eax
push ebx
call fcn.0044c29c
pop ecx
mov eax, 0xffffff6a
jmp 0x44c5eb
push ebx
call fcn.0044c29c
pop ecx
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret