Function at 0x473350
Capabilities:
Terminate process

Disassembly:
sub esp, 0x14
push esi
mov esi, eax
mov eax, dword [esi + 0x260]
test eax, eax
je 0x47339b
cmp eax, 1
jne 0x473374
mov eax, dword [esp + 0x20]
mov ecx, esi
pop esi
add esp, 0x14
jmp fcn.00470aa0
add eax, 0xffffffff
cmp eax, 1
mov dword [esi + 0x260], eax
jne 0x47339b
mov ecx, str.No_space_in_chunk_cache_for_iTXt
call fcn.004665c0
mov eax, dword [esp + 0x20]
mov ecx, esi
pop esi
add esp, 0x14
jmp fcn.00470aa0
mov eax, dword [esi + 0x6c]
test al, 1
push edi
jne 0x4733af
mov edi, str.Missing_IHDR_before_iTXt
mov eax, esi
jmp fcn.004665a0
test al, 4
je 0x4733b9
or eax, 8
mov dword [esi + 0x6c], eax
mov ecx, dword [esi + 0x2a8]
test ecx, ecx
je 0x4733de
mov eax, dword [esi + 0x240]
test eax, eax
push ecx
je 0x4733d6
push esi
call eax
add esp, 8
jmp 0x4733de
call fcn.0047fdbd
add esp, 4
push ebx
mov ebx, dword [esp + 0x28]
lea ecx, [ebx + 1]
call fcn.0046fa50
test eax, eax
mov dword [esi + 0x2a8], eax
jne 0x473406
mov ecx, str.No_memory_to_process_iTXt_chunk
call fcn.004665c0
pop ebx
pop edi
pop esi
add esp, 0x14
ret
call fcn.00470a30
xor eax, eax
mov ecx, esi
call fcn.00470aa0
test eax, eax
je 0x473436
mov edx, dword [esi + 0x2a8]
mov ecx, esi
call fcn.0046fa20
pop ebx
pop edi
mov dword [esi + 0x2a8], 0
pop esi
add esp, 0x14
ret
mov eax, dword [esi + 0x2a8]
mov byte [ebx + eax], 0
mov edx, dword [esi + 0x2a8]
push ebp
mov ebp, edx
cmp byte [ebp], 0
mov dword [esp + 0x1c], edx
je 0x47345c
add ebp, 1
cmp byte [ebp], 0
jne 0x473453
lea ecx, [edx + ebx]
add ebp, 1
lea eax, [ecx - 3]
cmp ebp, eax
jb 0x473473
mov ecx, str.Truncated_iTXt_chunk
jmp 0x473550
movsx edi, byte [ebp]
movsx eax, byte [ebp + 1]
add ebp, 1
add ebp, 1
cmp byte [ebp], 0
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], eax
mov ebx, ebp
je 0x473499
add ebx, 1
cmp byte [ebx], 0
jne 0x473491
add ebx, 1
cmp ebx, ecx
jb 0x4734aa
mov ecx, str.Truncated_iTXt_chunk
jmp 0x473550
cmp byte [ebx], 0
mov eax, ebx
je 0x4734b9
add eax, 1
cmp byte [eax], 0
jne 0x4734b1
add eax, 1
cmp eax, ecx
jb 0x4734ca
mov ecx, str.Malformed_iTXt_chunk
jmp 0x473550
sub eax, edx
test edi, edi
mov dword [esp + 0x20], eax
je 0x4734ed
mov ecx, dword [esp + 0x2c]
push eax
push ecx
mov ecx, dword [esp + 0x18]
push esi
lea edx, [esp + 0x1c]
call fcn.00470d20
add esp, 0xc
jmp 0x4734fa
add edx, eax
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov dword [esp + 0x10], eax
mov eax, dword [esi + 0x70]
mov dword [esp + 0x14], eax
or eax, 0x100000
mov dword [esi + 0x70], eax
mov eax, dword [esi + 0x23c]
test eax, eax
push 0x1c
je 0x47351d
push esi
call eax
add esp, 8
jmp 0x473525
call fcn.00482392
add esp, 4
mov edi, eax
test edi, edi
jne 0x473540
test dword [esi + 0x70], 0x100000
jne 0x473540
mov edi, str.Out_of_Memory
mov eax, esi
jmp fcn.004665a0
test edi, edi
mov edx, dword [esp + 0x14]
mov dword [esi + 0x70], edx
jne 0x47359c
mov ecx, str.Not_enough_memory_to_process_iTXt_chunk
call fcn.004665c0
mov ecx, dword [esi + 0x2a8]
test ecx, ecx
je 0x47358a
mov eax, dword [esi + 0x240]
test eax, eax
push ecx
je 0x473582
push esi
call eax
add esp, 8
pop ebp
pop ebx
pop edi
mov dword [esi + 0x2a8], 0
pop esi
add esp, 0x14
ret
call fcn.0047fdbd
add esp, 4
mov dword [esi + 0x2a8], 0
pop ebp
pop ebx
pop edi
pop esi
add esp, 0x14
ret
mov eax, dword [esp + 0x18]
add eax, 1
mov dword [edi], eax
mov ecx, dword [esi + 0x2a8]
mov eax, dword [esp + 0x1c]
sub ecx, eax
add ecx, ebx
mov dword [edi + 0x18], ecx
mov edx, dword [esi + 0x2a8]
sub edx, eax
mov eax, dword [esp + 0x10]
add edx, ebp
mov dword [edi + 0x14], edx
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0x28]
mov dword [edi + 0xc], 0
mov ecx, dword [esi + 0x2a8]
mov dword [edi + 4], ecx
mov edx, dword [esi + 0x2a8]
add edx, dword [esp + 0x20]
push edi
push eax
push esi
mov dword [edi + 8], edx
call fcn.00465d80
mov ebx, eax
mov eax, dword [esi + 0x240]
add esp, 0xc
test eax, eax
push edi
je 0x47360b
push esi
call eax
add esp, 8
jmp 0x473613
call fcn.0047fdbd
add esp, 4
mov ecx, dword [esi + 0x2a8]
test ecx, ecx
je 0x473638
mov eax, dword [esi + 0x240]
test eax, eax
push ecx
je 0x473630
push esi
call eax
add esp, 8
jmp 0x473638
call fcn.0047fdbd
add esp, 4
test ebx, ebx
mov dword [esi + 0x2a8], 0
je 0x473594
mov edi, str.Insufficient_memory_to_store_iTXt_chunk
mov eax, esi
jmp fcn.004665a0