Function at 0x100546a0
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1438
call fcn.100d9a40
mov eax, dword [0x10190120]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, ecx
mov byte [ebp - 0x1405], 0
xor ecx, ecx
mov dword [ebp - 0x140c], eax
push ebx
push esi
mov esi, dword [eax]
mov word [ebp - 0x418], cx
mov byte [ebp - 0x416], cl
mov dword [ebp - 0x1424], ecx
mov dword [ebp - 0x1428], ecx
mov dword [ebp - 0x1420], ecx
mov dword [ebp - 0x1418], ecx
mov dword [ebp - 0x142c], ecx
mov dword [ebp - 0x141c], ecx
mov dword [eax + 8], ecx
mov dword [eax + 4], ecx
mov dword [eax + 0xc], ecx
mov ecx, esi
push edi
mov byte [ebp - 0x140d], 0
mov dword [ebp - 0x1414], 1
mov dword [ebp - 0x1430], esi
call fcn.10053210
test eax, eax
je 0x10055822
nop dword [eax]
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
mov ebx, eax
call fcn.1004ca40
shl ebx, 0x10
mov ecx, esi
add ebx, eax
call fcn.1004ca40
mov ecx, esi
mov edi, eax
call fcn.1004ca40
shl edi, 0x10
lea ecx, [edi + eax]
mov dword [ebp - 0x1434], ecx
cmp ecx, 0x49484452
ja 0x10054b52
je 0x100548c3
cmp ecx, 0x43674249
je 0x1005488c
cmp ecx, 0x49444154
je 0x100547cc
cmp ecx, 0x49454e44
jne 0x10054b6a
cmp dword [ebp - 0x1414], 0
je 0x10054e8a
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155890
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x1414], 0
jne 0x100553f1
cmp byte [ebp - 0x1405], 0
je 0x100547ef
cmp dword [ebp - 0x1420], 0
je 0x1005536d
mov eax, dword [ebp - 0x1424]
lea edi, [ebx + eax]
cmp edi, eax
jl 0x10055822
mov eax, dword [ebp - 0x1428]
cmp edi, eax
jbe 0x10054851
test eax, eax
jne 0x1005481e
mov eax, 0x1000
cmp ebx, eax
cmova eax, ebx
mov dword [ebp - 0x1428], eax
cmp edi, eax
jbe 0x1005482e
add eax, eax
cmp edi, eax
ja 0x10054822
mov dword [ebp - 0x1428], eax
push eax
mov eax, dword [ebp - 0x140c]
push dword [eax + 4]
call fcn.100e5d34
add esp, 8
test eax, eax
je 0x10055399
mov ecx, dword [ebp - 0x140c]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x140c]
mov ecx, esi
push ebx
mov edx, dword [eax + 4]
add edx, dword [ebp - 0x1424]
call fcn.1004c9a0
add esp, 4
test eax, eax
je 0x100553c5
mov ecx, esi
mov dword [ebp - 0x1424], edi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
mov dword [ebp - 0x141c], 1
test ebx, ebx
je 0x10054e77
jns 0x10054bac
mov eax, dword [esi + 0xb0]
mov ecx, esi
mov dword [esi + 0xac], eax
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
cmp dword [ebp - 0x1414], 0
je 0x10055601
mov dword [ebp - 0x1414], 0
cmp ebx, 0xd
jne 0x100555d5
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
mov edi, eax
call fcn.1004ca40
shl edi, 0x10
mov ecx, esi
add eax, edi
mov dword [esi], eax
call fcn.1004ca40
mov ecx, esi
mov edi, eax
call fcn.1004ca40
shl edi, 0x10
add eax, edi
mov dword [esi + 4], eax
cmp eax, 0x1000000
ja 0x100555a9
cmp dword [esi], 0x1000000
ja 0x1005557d
mov eax, dword [esi + 0xac]
cmp eax, dword [esi + 0xb0]
jae 0x10054942
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054962
cmp dword [esi + 0x20], 0
je 0x10054960
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054962
xor cl, cl
mov ebx, dword [ebp - 0x140c]
mov eax, esi
mov edx, 0x20
lea edi, [edx + eax]
movzx eax, cl
mov dword [ebx + 0x10], eax
cmp eax, 1
je 0x10054995
cmp eax, 2
je 0x10054995
cmp eax, 4
je 0x10054995
cmp eax, 8
je 0x10054995
cmp eax, 0x10
jne 0x1005541d
mov eax, dword [esi + 0xac]
cmp eax, dword [esi + 0xb0]
jae 0x100549ae
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x100549cd
cmp dword [edi], 0
je 0x100549cb
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x100549cd
xor cl, cl
movzx ecx, cl
mov dword [ebp - 0x142c], ecx
cmp ecx, 6
ja 0x10055551
cmp ecx, 3
jne 0x100549f8
cmp dword [ebx + 0x10], 0x10
je 0x10055449
mov bl, cl
mov byte [ebp - 0x1405], bl
jmp 0x10054a07
test cl, 1
jne 0x10055525
mov bl, byte [ebp - 0x1405]
cmp eax, dword [esi + 0xb0]
jb 0x10054a21
cmp dword [edi], 0
je 0x10054a32
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
test cl, cl
jne 0x10055475
cmp eax, dword [esi + 0xb0]
jb 0x10054a4c
cmp dword [edi], 0
je 0x10054a5d
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
test cl, cl
jne 0x100554a1
cmp eax, dword [esi + 0xb0]
jae 0x10054a70
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054a8f
cmp dword [edi], 0
je 0x10054a8d
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054a8f
xor cl, cl
movzx eax, cl
mov dword [ebp - 0x1418], eax
cmp eax, 1
ja 0x100554f9
mov ecx, dword [esi]
test ecx, ecx
je 0x100554cd
mov edi, dword [esi + 4]
test edi, edi
je 0x100554cd
xor edx, edx
mov eax, 0x40000000
div ecx
test bl, bl
jne 0x10054b14
mov ecx, dword [ebp - 0x142c]
mov edx, ecx
shr edx, 2
and ecx, 2
and edx, 1
or ecx, 1
add ecx, edx
xor edx, edx
div ecx
mov dword [esi + 8], ecx
cmp eax, edi
jae 0x10054e77
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x1015577c
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
shr eax, 2
mov dword [esi + 8], 1
cmp eax, edi
jae 0x10054e77
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155770
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
cmp ecx, 0x504c5445
je 0x10054d47
cmp ecx, 0x74524e53
je 0x10054c04
cmp dword [ebp - 0x1414], 0
jne 0x1005567d
test ecx, 0x20000000
je 0x1005562d
test ebx, ebx
je 0x10054e77
jns 0x10054bac
mov eax, dword [esi + 0xb0]
mov ecx, esi
mov dword [esi + 0xac], eax
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
cmp dword [esi + 0x10], 0
je 0x10054beb
mov ecx, dword [esi + 0xb0]
mov eax, ecx
sub eax, dword [esi + 0xac]
cmp eax, ebx
jge 0x10054beb
sub ebx, eax
mov dword [esi + 0xac], ecx
mov eax, dword [esi + 0x14]
push ebx
push dword [esi + 0x1c]
call eax
add esp, 8
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
add dword [esi + 0xac], ebx
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
cmp dword [ebp - 0x1414], 0
jne 0x10055785
mov eax, dword [ebp - 0x140c]
cmp dword [eax + 4], 0
jne 0x10055759
cmp byte [ebp - 0x1405], 0
je 0x10054ca9
mov eax, dword [ebp - 0x1420]
test eax, eax
je 0x100556d5
cmp ebx, eax
ja 0x100556a9
xor edi, edi
mov byte [ebp - 0x1405], 4
test ebx, ebx
je 0x10054e77
mov eax, dword [esi + 0xac]
cmp eax, dword [esi + 0xb0]
jae 0x10054c6a
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054c8a
cmp dword [esi + 0x20], 0
je 0x10054c88
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054c8a
xor cl, cl
mov byte [ebp + edi*4 - 0x411], cl
inc edi
cmp edi, ebx
jb 0x10054c51
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
mov ecx, dword [esi + 8]
test cl, 1
je 0x1005572d
lea eax, [ecx + ecx]
cmp ebx, eax
jne 0x10055701
mov ebx, dword [ebp - 0x140c]
xor edi, edi
mov byte [ebp - 0x140d], 1
cmp dword [ebx + 0x10], 0x10
jne 0x10054d05
test ecx, ecx
jle 0x10054e77
nop dword [eax]
mov ecx, esi
call fcn.1004ca40
mov word [ebp + edi*2 - 0x10], ax
inc edi
cmp edi, dword [esi + 8]
jl 0x10054ce0
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
test ecx, ecx
jle 0x10054e77
nop dword [eax]
mov ecx, esi
call fcn.1004ca40
mov ecx, dword [ebx + 0x10]
movzx eax, al
movzx ecx, byte [ecx + 0x1015606c]
imul eax, ecx
mov byte [ebp + edi - 0x418], al
inc edi
cmp edi, dword [esi + 8]
jl 0x10054d10
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
cmp dword [ebp - 0x1414], 0
jne 0x10055809
cmp ebx, 0x300
ja 0x100557dd
mov eax, 0xaaaaaaab
mul ebx
mov ecx, edx
shr ecx, 1
mov dword [ebp - 0x1420], ecx
lea eax, [ecx + ecx*2]
cmp eax, ebx
jne 0x100557b1
xor edx, edx
mov dword [ebp - 0x1434], edx
test ecx, ecx
je 0x10054e77
lea edi, [esi + 0x20]
nop
mov eax, dword [esi + 0xac]
mov ebx, edi
cmp eax, dword [esi + 0xb0]
jae 0x10054dab
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054dd0
cmp dword [ebx], 0
je 0x10054dce
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov edx, dword [ebp - 0x1434]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054dd0
xor cl, cl
mov byte [ebp + edx*4 - 0x414], cl
cmp eax, dword [esi + 0xb0]
jae 0x10054ded
mov cl, byte [eax]
lea edi, [esi + 0x20]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054e14
cmp dword [ebx], 0
mov edi, ebx
je 0x10054e12
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov edx, dword [ebp - 0x1434]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054e14
xor cl, cl
mov byte [ebp + edx*4 - 0x413], cl
cmp eax, dword [esi + 0xb0]
jae 0x10054e2e
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054e55
cmp dword [ebx], 0
mov edi, ebx
je 0x10054e53
mov ecx, esi
call fcn.1004c940
mov eax, dword [esi + 0xac]
mov edx, dword [ebp - 0x1434]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xac], eax
jmp 0x10054e55
xor cl, cl
mov byte [ebp + edx*4 - 0x412], cl
mov byte [ebp + edx*4 - 0x411], 0xff
inc edx
mov dword [ebp - 0x1434], edx
cmp edx, dword [ebp - 0x1420]
jb 0x10054d90
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
jmp 0x10054730
mov eax, dword [ebp - 0x140c]
mov ebx, dword [eax + 4]
test ebx, ebx
jne 0x10054ec3
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.no_IDAT
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov edi, dword [esi]
imul edi, dword [eax + 0x10]
add edi, 7
shr edi, 3
imul edi, dword [esi + 8]
inc edi
imul edi, dword [esi + 4]
push edi
call fcn.100e37fa
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x1005534d
mov eax, dword [ebp - 0x1424]
xor edx, edx
add eax, ebx
mov dword [ebp - 0x13f0], ecx
cmp dword [ebp - 0x141c], edx
mov dword [ebp - 0x1400], eax
lea eax, [ecx + edi]
mov dword [ebp - 0x13f4], ecx
sete dl
lea ecx, [ebp - 0x1404]
mov dword [ebp - 0x1404], ebx
mov dword [ebp - 0x13ec], eax
mov dword [ebp - 0x13e8], 1
call fcn.10053070
test eax, eax
je 0x1005533f
mov eax, dword [ebp - 0x13f0]
mov ebx, dword [ebp - 0x140c]
mov edi, dword [ebp - 0x13f4]
sub edi, eax
mov dword [ebx + 8], eax
test eax, eax
je 0x10055822
push dword [ebx + 4]
call fcn.100ddcba
mov dword [ebx + 4], 0
add esp, 4
mov ecx, dword [esi + 8]
lea eax, [ecx + 1]
cmp eax, 4
jne 0x10054f81
cmp byte [ebp - 0x1405], 0
je 0x10054f8c
cmp byte [ebp - 0x140d], 0
jne 0x10054f8c
mov eax, ecx
mov ecx, dword [ebp - 0x1418]
push ecx
mov ecx, dword [ebp - 0x142c]
push ecx
mov dword [esi + 0xc], eax
mov ecx, ebx
push dword [ebx + 0x10]
mov edx, dword [ebx + 8]
push eax
push edi
call fcn.100543e0
add esp, 0x14
test eax, eax
je 0x10055822
cmp byte [ebp - 0x140d], 0
je 0x100550e8
mov ecx, dword [ebx]
mov eax, dword [esi + 0xc]
mov edi, dword [ecx + 4]
imul edi, dword [ecx]
cmp dword [ebx + 0x10], 0x10
mov ebx, dword [ebx + 0xc]
jne 0x1005506c
cmp eax, 2
je 0x1005503d
cmp eax, 4
je 0x10054ffd
push 0x12dc
push 0x10155550
push str.out_n__2__out_n__4
call fcn.100e36f8
add esp, 0xc
test edi, edi
je 0x100550e2
mov cx, word [ebp - 0xc]
lea eax, [ebx + 4]
mov edx, dword [ebp - 0xe]
mov bx, word [ebp - 0x10]
cmp word [eax - 4], bx
jne 0x1005502a
cmp word [eax - 2], dx
jne 0x1005502a
cmp word [eax], cx
jne 0x1005502a
xor esi, esi
mov word [eax + 2], si
add eax, 8
sub edi, 1
jne 0x10055013
mov esi, dword [ebp - 0x1430]
jmp 0x100550e2
test edi, edi
je 0x100550e2
mov cx, word [ebp - 0x10]
nop dword [eax]
xor edx, edx
lea ebx, [ebx + 4]
cmp word [ebx - 4], cx
mov eax, 0xffff
cmove eax, edx
mov word [ebx - 2], ax
sub edi, 1
jne 0x10055050
jmp 0x100550e2
cmp eax, 2
je 0x100550c2
cmp eax, 4
je 0x1005508d
push 0x12c3
push 0x10155360
push 0x101555b4
call fcn.100e36f8
add esp, 0xc
test edi, edi
je 0x100550e2
mov cl, byte [ebp - 0x416]
lea eax, [ebx + 2]
mov dl, byte [ebp - 0x417]
mov bl, byte [ebp - 0x418]
cmp byte [eax - 2], bl
jne 0x100550b8
cmp byte [eax - 1], dl
jne 0x100550b8
cmp byte [eax], cl
jne 0x100550b8
mov byte [eax + 1], 0
add eax, 4
sub edi, 1
jne 0x100550a6
jmp 0x100550e2
test edi, edi
je 0x100550e2
mov cl, byte [ebp - 0x418]
nop dword [eax]
cmp byte [ebx], cl
lea ebx, [ebx + 2]
sete al
dec al
mov byte [ebx - 1], al
sub edi, 1
jne 0x100550d0
mov ebx, dword [ebp - 0x140c]
cmp dword [ebp - 0x141c], 0
je 0x10055206
cmp dword [0x1019470c], 0
je 0x10055206
cmp dword [esi + 0xc], 2
jle 0x10055206
mov eax, dword [ebx]
mov ecx, dword [ebp - 0x140c]
mov ebx, dword [eax + 4]
imul ebx, dword [eax]
mov eax, dword [eax + 0xc]
mov edi, dword [ecx + 0xc]
mov dword [ebp - 0x1418], ebx
cmp eax, 3
jne 0x1005514b
test ebx, ebx
je 0x10055206
mov cl, byte [edi]
lea edi, [edi + 3]
mov al, byte [edi - 1]
mov byte [edi - 3], al
mov byte [edi - 1], cl
sub ebx, 1
jne 0x10055133
jmp 0x10055206
cmp eax, 4
je 0x10055167
push 0x132d
push 0x10155660
push str.s__img_out_n__4
call fcn.100e36f8
add esp, 0xc
test ebx, ebx
je 0x10055206
cmp dword [0x10194708], 0
je 0x100551f3
lea esi, [edi + 2]
nop dword [eax + eax]
mov al, byte [esi + 1]
mov cl, byte [esi - 2]
mov ch, byte [esi]
test al, al
je 0x100551d8
movzx ebx, al
xor edx, edx
movzx eax, byte [esi - 1]
mov edi, ebx
imul eax, eax, 0xff
shr edi, 1
add eax, edi
div ebx
xor edx, edx
mov byte [esi - 1], al
movzx eax, cl
imul eax, eax, 0xff
movzx ecx, ch
add eax, edi
div ebx
xor edx, edx
mov byte [ebp - 0x140e], al
imul eax, ecx, 0xff
mov cl, byte [ebp - 0x140e]
add eax, edi
div ebx
mov ebx, dword [ebp - 0x1418]
mov ch, al
mov byte [esi - 2], ch
mov byte [esi], cl
add esi, 4
sub ebx, 1
mov dword [ebp - 0x1418], ebx
jne 0x10055180
mov esi, dword [ebp - 0x1430]
jmp 0x10055206
mov cl, byte [edi]
lea edi, [edi + 4]
mov al, byte [edi - 2]
mov byte [edi - 4], al
mov byte [edi - 2], cl
sub ebx, 1
jne 0x100551f3
mov al, byte [ebp - 0x1405]
test al, al
je 0x100552f7
mov ecx, dword [ebp - 0x140c]
movzx eax, al
mov dword [esi + 8], eax
mov dword [esi + 0xc], 4
mov eax, dword [ecx]
mov ebx, dword [eax + 4]
imul ebx, dword [eax]
mov eax, dword [ecx + 0xc]
mov dword [ebp - 0x1418], eax
test ebx, ebx
js 0x100552cb
lea eax, [ebx*4]
cmp ebx, 0x1fffffff
jg 0x100552cb
push eax
call fcn.100e37fa
add esp, 4
mov dword [ebp - 0x141c], eax
test eax, eax
je 0x100552cb
xor edi, edi
test ebx, ebx
je 0x100552af
mov esi, dword [ebp - 0x1418]
lea edx, [eax + 2]
movzx ecx, byte [edi + esi]
lea edx, [edx + 4]
inc edi
movzx eax, byte [ebp + ecx*4 - 0x414]
mov byte [edx - 6], al
movzx eax, byte [ebp + ecx*4 - 0x413]
mov byte [edx - 5], al
movzx eax, byte [ebp + ecx*4 - 0x412]
mov byte [edx - 4], al
movzx eax, byte [ebp + ecx*4 - 0x411]
mov byte [edx - 3], al
cmp edi, ebx
jb 0x10055271
mov esi, dword [ebp - 0x1430]
mov ebx, dword [ebp - 0x140c]
push dword [ebx + 0xc]
call fcn.100ddcba
mov eax, dword [ebp - 0x141c]
add esp, 4
mov dword [ebx + 0xc], eax
jmp 0x10055309
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x101555e8
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
cmp byte [ebp - 0x140d], 0
mov ebx, dword [ebp - 0x140c]
je 0x10055309
inc dword [esi + 8]
push dword [ebx + 8]
call fcn.100ddcba
add esp, 4
mov dword [ebx + 8], 0
mov ecx, esi
call fcn.1004ca40
mov ecx, esi
call fcn.1004ca40
mov eax, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x13f0]
call fcn.100ddcba
add esp, 4
mov eax, dword [ebp - 0x140c]
mov dword [eax + 8], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.no_PLTE
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155734
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.outofdata
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155714
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.1_2_4_8_16_bit_only
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.bad_ctype
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.bad_comp_method
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.bad_filter_method
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.0_pixel_image
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.bad_interlace_method
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155514
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x101554f4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x101554dc
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x101554e8
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.bad_IHDR_len
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.multiple_IHDR
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov eax, ecx
mov byte [0x10190da3], cl
shr eax, 0x18
mov byte [str.XXXX_PNG_chunk_not_known], al
mov eax, ecx
shr eax, 0x10
mov byte [0x10190da1], al
mov eax, ecx
mov ecx, dword [0x10193df4]
shr eax, 8
mov byte [0x10190da2], al
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.XXXX_PNG_chunk_not_known
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.first_not_IHDR
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155704
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.tRNS_before_PLTE
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.bad_tRNS_len
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.tRNS_with_alpha
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.tRNS_after_IDAT
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x101557a8
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], str.invalid_PLTE
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155788
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.100d8712
mov esp, ebp
pop ebp
ret
mov ecx, dword [0x10193df4]
mov eax, dword fs:[0x2c]
mov eax, dword [eax + ecx*4]
mov dword [eax + 0x10], 0x10155798
mov ecx, dword [ebp - 8]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.100d8712
mov esp, ebp
pop ebp
ret