Function at 0x44f240
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x2c
push ebx
push ebp
mov ebp, dword [esp + 0x40]
push esi
mov esi, dword [esp + 0x3c]
mov eax, dword [esi + 0x278]
test eax, eax
je 0x44f2a7
cmp eax, 1
jne 0x44f26c
mov edx, esi
pop esi
mov ecx, ebp
pop ebp
pop ebx
add esp, 0x2c
jmp fcn.0044c690
dec eax
mov dword [esi + 0x278], eax
cmp eax, 1
jne 0x44f2a7
mov ecx, ebp
mov edx, esi
call fcn.0044c690
test dword [esi + 0x78], 0x100000
mov ebx, esi
je 0x44f29d
mov ecx, str.no_space_in_chunk_cache
call fcn.00446480
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret
mov eax, str.no_space_in_chunk_cache
call fcn.00446450
mov eax, dword [esi + 0x74]
test al, 1
jne 0x44f2ba
mov eax, str.missing_IHDR
mov ebx, esi
call fcn.00446450
test al, 4
je 0x44f2c4
or eax, 8
mov dword [esi + 0x74], eax
push edi
push 1
lea edi, [ebp + 1]
mov eax, esi
call fcn.0044c810
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x44f30a
mov ecx, ebp
mov edx, esi
call fcn.0044c690
test dword [esi + 0x78], 0x100000
mov ebx, esi
je 0x44f300
mov ecx, str.out_of_memory
call fcn.00446480
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret
mov eax, str.out_of_memory
call fcn.00446450
mov eax, ebp
mov ecx, esi
call fcn.0044c650
xor ecx, ecx
mov edx, esi
call fcn.0044c690
test eax, eax
jne 0x44f47a
xor esi, esi
test ebp, ebp
jbe 0x44f45b
mov edi, edi
cmp byte [esi + ebx], 0
je 0x44f33b
inc esi
cmp esi, ebp
jb 0x44f330
cmp esi, 0x4f
ja 0x44f45b
cmp esi, 1
jb 0x44f45b
lea eax, [esi + 5]
cmp eax, ebp
jbe 0x44f35e
mov eax, str.truncated
jmp 0x44f460
mov al, byte [esi + ebx + 1]
test al, al
je 0x44f37b
cmp al, 1
jne 0x44f371
cmp byte [esi + ebx + 2], 0
je 0x44f37b
mov eax, str.bad_compression_info
jmp 0x44f460
xor ecx, ecx
test al, al
setne cl
add esi, 3
mov dword [esp + 0x18], esi
mov eax, ecx
mov dword [esp + 0x14], eax
cmp esi, ebp
jae 0x44f39e
cmp byte [esi + ebx], 0
je 0x44f39e
inc esi
cmp esi, ebp
jb 0x44f393
inc esi
mov dword [esp + 0x1c], esi
cmp esi, ebp
jae 0x44f3b2
cmp byte [esi + ebx], 0
je 0x44f3b2
inc esi
cmp esi, ebp
jb 0x44f3a7
inc esi
test eax, eax
jne 0x44f3c3
cmp esi, ebp
ja 0x44f354
mov edi, dword [esp + 0x40]
sub ebp, esi
jmp 0x44f3fe
cmp esi, ebp
jae 0x44f354
mov edi, dword [esp + 0x40]
push esi
push ebp
lea edx, [esp + 0x18]
mov ecx, edi
mov dword [esp + 0x18], 0xffffffff
call fcn.0044caf0
add esp, 8
cmp eax, 1
jne 0x44f3f0
mov ebx, dword [edi + 0x298]
jmp 0x44f3fa
mov eax, dword [edi + 0x9c]
test eax, eax
jne 0x44f464
mov ebp, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
xor eax, eax
cmp dword [esp + 0x14], eax
lea edx, [esi + ebp]
setne al
add ecx, ebx
mov byte [edx + ebx], 0
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x44]
add edx, ebx
inc eax
mov dword [esp + 0x20], eax
lea eax, [esp + 0x20]
push eax
push ecx
add esi, ebx
push edi
mov dword [esp + 0x30], ebx
mov dword [esp + 0x44], edx
mov dword [esp + 0x34], esi
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], ebp
call fcn.0044afe0
add esp, 0xc
test eax, eax
je 0x44f47a
mov eax, str.insufficient_memory
jmp 0x44f464
mov eax, str.bad_keyword
mov edi, dword [esp + 0x40]
test dword [edi + 0x78], 0x100000
mov ebx, edi
je 0x44f305
mov ecx, eax
call fcn.00446480
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x2c
ret