Function at 0x43e845
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x20
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
test edi, edi
jne 0x43e872
cmp dword [ebp + 0xc], edi
je 0x43ea93
push 0x56cd14
push dword [ebp + 0xc]
call fcn.0043f190
pop ecx
pop ecx
mov dword [ebp - 4], eax
jmp 0x43e875
mov dword [ebp - 4], edi
push 0x800
xor ebx, ebx
call fcn.004b7bc6
push dword [ebp - 4]
mov esi, eax
push 1
push 0x800
push esi
mov dword [ebp - 0xc], esi
mov byte [esi], bl
call fcn.004e3d64
add esp, 0x14
mov dword [ebp - 8], eax
test edi, edi
jne 0x43e8ab
push dword [ebp - 4]
call fcn.0043e691
pop ecx
push 4
push str.OFF_n
push esi
call fcn.004e32a0
add esp, 0xc
test eax, eax
jne 0x43e8c9
mov ebx, 0x545328
jmp 0x43ea83
push 9
push str.INRIMAGE
push esi
call fcn.004e32a0
add esp, 0xc
test eax, eax
jne 0x43e8e7
mov ebx, 0x545338
jmp 0x43ea83
push 7
push str.PANDORE
push esi
call fcn.004e32a0
add esp, 0xc
test eax, eax
jne 0x43e905
mov ebx, 0x54532c
jmp 0x43ea83
push 4
lea eax, [esi + 0x80]
push str.DICM
push eax
call fcn.004e32a0
add esp, 0xc
test eax, eax
jne 0x43e929
mov ebx, 0x54533c
jmp 0x43ea83
mov al, byte [esi]
cmp al, 0xff
jne 0x43e944
cmp byte [esi + 1], 0xd8
jne 0x43e944
cmp byte [esi + 2], al
jne 0x43e944
mov ebx, 0x545324
jmp 0x43ea83
cmp al, 0x42
jne 0x43e958
cmp byte [esi + 1], 0x4d
jne 0x43e958
mov ebx, 0x54531c
jmp 0x43ea83
cmp al, 0x47
jne 0x43e98b
cmp byte [esi + 1], 0x49
jne 0x43e98b
cmp byte [esi + 2], 0x46
jne 0x43e98b
cmp byte [esi + 3], 0x38
jne 0x43e98b
cmp byte [esi + 5], 0x61
jne 0x43e98b
mov cl, byte [esi + 4]
cmp cl, 0x37
je 0x43e981
cmp cl, 0x39
jne 0x43e98b
mov ebx, 0x545320
jmp 0x43ea83
cmp al, 0x89
jne 0x43e9c3
cmp byte [esi + 1], 0x50
jne 0x43e9c3
cmp byte [esi + 2], 0x4e
jne 0x43e9c3
cmp byte [esi + 3], 0x47
jne 0x43e9c3
cmp byte [esi + 4], 0xd
jne 0x43e9c3
cmp byte [esi + 5], 0xa
jne 0x43e9c3
cmp byte [esi + 6], 0x1a
jne 0x43e9c3
cmp byte [esi + 7], 0xa
jne 0x43e9c3
mov ebx, 0x545330
jmp 0x43ea83
cmp al, 0x49
jne 0x43e9cc
cmp byte [esi + 1], al
je 0x43e9d5
cmp al, 0x4d
jne 0x43e9df
cmp byte [esi + 1], al
jne 0x43e9df
mov ebx, 0x545334
jmp 0x43ea83
push 0x400
call fcn.004b7bc6
mov edi, eax
mov dword [ebp - 4], esi
mov eax, dword [ebp - 8]
add eax, esi
mov dword [ebp - 8], eax
mov byte [edi], bl
pop ecx
cmp esi, eax
jae 0x43ea37
push edi
push str._1023__n_
push esi
call fcn.004e47df
add esp, 0xc
mov dword [ebp - 0x10], eax
cmp eax, 0xffffffff
je 0x43ea34
cmp byte [edi], 0x23
je 0x43ea1d
test eax, eax
jne 0x43ea34
test eax, eax
je 0x43ea2a
push edi
call fcn.004e30e0
pop ecx
jmp 0x43ea2c
mov eax, ebx
inc esi
add esi, eax
cmp esi, dword [ebp - 8]
jb 0x43e9fd
mov esi, dword [ebp - 0xc]
lea eax, [ebp - 0x10]
push eax
push str._P_d
push edi
call fcn.004e47df
add esp, 0xc
cmp eax, 1
jne 0x43ea55
mov ebx, 0x545314
jmp 0x43ea7c
lea eax, [ebp + 0xb]
push eax
push 0x545378
push edi
call fcn.004e47df
add esp, 0xc
cmp eax, 1
jne 0x43ea7c
mov al, byte [ebp + 0xb]
cmp al, 0x66
je 0x43ea77
cmp al, 0x46
jne 0x43ea7c
mov ebx, 0x545318
push edi
call fcn.004e1689
pop ecx
push esi
call fcn.004e1689
pop ecx
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x20]
push str.cimg::file_type__:_Specified_filename_is__null_.
push eax
call fcn.0042bd0f
pop ecx
pop ecx
push 0x57a2f4
lea eax, [ebp - 0x20]
push eax
call fcn.004e52d6
int3