Function at 0x430530
Capabilities:
Contain obfuscated stackstrings
Resolve function by parsing pe exports

Disassembly:
sub esp, 0xac
push ebp
mov ebp, dword [esp + 0xb4]
test ebp, ebp
je 0x4318a1
cmp dword [esp + 0xb8], 0
je 0x4318a1
mov al, byte [ebp + 0x130]
cmp al, 8
push ebx
push esi
push edi
jae 0x4305d9
mov ebx, dword [esp + 0xc4]
movzx edi, al
mov esi, 8
sub esi, edi
push esi
lea eax, [edi + ebx + 0x20]
push eax
push ebp
mov dword [ebp + 0x28c], 0x11
call fcn.00434390
push esi
add ebx, 0x20
push edi
push ebx
mov byte [ebp + 0x130], 8
call fcn.004334c0
add esp, 0x18
test eax, eax
je 0x4305cd
cmp edi, 4
jae 0x4305bf
add esi, 0xfffffffc
push esi
push edi
push ebx
call fcn.004334c0
add esp, 0xc
test eax, eax
je 0x4305bf
push str.Not_a_PNG_file
jmp 0x4305c4
push str.PNG_file_corrupted_by_ASCII_conversion
push ebp
call fcn.00434200
add esp, 8
cmp edi, 3
jae 0x4305d9
or dword [ebp + 0x6c], 0x1000
mov cl, 0x44
mov byte [esp + 0x8e], cl
mov byte [esp + 0x15], cl
mov byte [esp + 0xaf], cl
mov byte [esp + 0x3f], cl
mov cl, 0x69
mov byte [esp + 0x54], cl
mov byte [esp + 0xb4], cl
mov cl, 0x46
mov bl, 0x49
mov al, 0x54
mov byte [esp + 0x5d], cl
mov byte [esp + 0x5e], cl
mov cl, 0x73
mov dl, 0x74
mov byte [esp + 0x8c], bl
mov byte [esp + 0x8d], 0x48
mov byte [esp + 0x8f], 0x52
mov byte [esp + 0x90], 0
mov byte [esp + 0x14], bl
mov byte [esp + 0x16], 0x41
mov byte [esp + 0x17], al
mov byte [esp + 0x18], 0
mov byte [esp + 0xac], bl
mov byte [esp + 0xad], 0x45
mov byte [esp + 0xae], 0x4e
mov byte [esp + 0xb0], 0
mov byte [esp + 0x1c], 0x50
mov byte [esp + 0x1d], 0x4c
mov byte [esp + 0x1e], al
mov byte [esp + 0x1f], 0x45
mov byte [esp + 0x20], 0
mov byte [esp + 0x3c], 0x62
mov byte [esp + 0x3d], 0x4b
mov byte [esp + 0x3e], 0x47
mov byte [esp + 0x40], 0
mov byte [esp + 0x7c], 0x63
mov byte [esp + 0x7d], 0x48
mov byte [esp + 0x7e], 0x52
mov byte [esp + 0x7f], 0x4d
mov byte [esp + 0x80], 0
mov byte [esp + 0x4c], 0x67
mov byte [esp + 0x4d], 0x41
mov byte [esp + 0x4e], 0x4d
mov byte [esp + 0x4f], 0x41
mov byte [esp + 0x50], 0
mov byte [esp + 0x9c], 0x68
mov byte [esp + 0x9d], bl
mov byte [esp + 0x9e], 0x53
mov byte [esp + 0x9f], al
mov byte [esp + 0xa0], 0
mov byte [esp + 0x55], 0x43
mov byte [esp + 0x56], 0x43
mov byte [esp + 0x57], 0x50
mov byte [esp + 0x58], 0
mov byte [esp + 0xb5], al
mov byte [esp + 0xb6], 0x58
mov byte [esp + 0xb7], dl
mov byte [esp + 0xb8], 0
mov byte [esp + 0x5c], 0x6f
mov byte [esp + 0x5f], cl
mov byte [esp + 0x60], 0
mov byte [esp + 0x24], 0x70
mov byte [esp + 0x25], 0x43
mov byte [esp + 0x26], 0x41
mov byte [esp + 0x27], 0x4c
mov byte [esp + 0x28], 0
mov byte [esp + 0x2c], 0x70
mov byte [esp + 0x2d], 0x48
mov byte [esp + 0x2e], 0x59
mov byte [esp + 0x2f], cl
mov byte [esp + 0x30], 0
mov byte [esp + 0x34], cl
mov byte [esp + 0x35], 0x42
mov byte [esp + 0x36], bl
mov byte [esp + 0x37], al
mov byte [esp + 0x38], 0
mov byte [esp + 0x6c], cl
mov byte [esp + 0x6d], 0x43
mov byte [esp + 0x6e], 0x41
mov byte [esp + 0x6f], 0x4c
mov byte [esp + 0x70], 0
mov byte [esp + 0x64], cl
mov byte [esp + 0x65], 0x50
mov byte [esp + 0x66], 0x4c
mov byte [esp + 0x67], al
mov byte [esp + 0x68], 0
mov byte [esp + 0x44], cl
mov byte [esp + 0x45], 0x52
mov byte [esp + 0x46], 0x47
mov byte [esp + 0x47], 0x42
mov byte [esp + 0x48], 0
mov byte [esp + 0x74], dl
mov byte [esp + 0x75], 0x45
mov byte [esp + 0x76], 0x58
mov byte [esp + 0x77], dl
mov byte [esp + 0x78], 0
mov byte [esp + 0x84], dl
mov byte [esp + 0x85], bl
mov byte [esp + 0x86], 0x4d
mov byte [esp + 0x87], 0x45
mov byte [esp + 0x88], 0
mov byte [esp + 0x94], dl
mov byte [esp + 0x95], 0x52
mov byte [esp + 0x96], 0x4e
mov byte [esp + 0x97], 0x53
mov byte [esp + 0x98], 0
mov byte [esp + 0xa4], 0x7a
mov byte [esp + 0xa5], al
mov byte [esp + 0xa6], 0x58
mov byte [esp + 0xa7], dl
mov byte [esp + 0xa8], 0
lea edi, [ebp + 0x120]
push ebp
call fcn.0043aa30
mov dword [esp + 0x14], eax
add esp, 4
mov eax, 4
lea ecx, [esp + 0x14]
mov edx, edi
lea ecx, [ecx]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430878
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430860
test eax, eax
je 0x4308d5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4308c7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4308d5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4308c7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4308d5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4308c7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4308d5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x4308d5
test esi, esi
mov eax, 1
jg 0x4308d7
or eax, 0xffffffff
jmp 0x4308d7
xor eax, eax
test eax, eax
jne 0x4308ea
mov eax, dword [ebp + 0x6c]
test al, 8
je 0x4308ea
or eax, 0x2000
mov dword [ebp + 0x6c], eax
mov eax, 4
lea ecx, [esp + 0x8c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430910
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4308f8
test eax, eax
je 0x43096d
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43095f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43096d
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43095f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43096d
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43095f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43096d
movzx esi, byte [edx]
movzx edx, byte [ecx]
sub esi, edx
je 0x43096d
test esi, esi
mov eax, 1
jg 0x43096f
or eax, 0xffffffff
jmp 0x43096f
xor eax, eax
test eax, eax
jne 0x43098e
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc4]
push eax
push ecx
push ebp
call fcn.0043ab90
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0xac]
mov edx, edi
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4309b8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4309a0
test eax, eax
je 0x430a15
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430a07
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430a15
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430a07
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430a15
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430a07
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430a15
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x430a15
test esi, esi
mov eax, 1
jg 0x430a17
or eax, 0xffffffff
jmp 0x430a17
xor eax, eax
test eax, eax
jne 0x430a36
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc4]
push ecx
push edx
push ebp
call fcn.0043aef0
add esp, 0xc
jmp 0x430845
push edi
push ebp
call fcn.00433af0
add esp, 8
test eax, eax
mov edx, edi
mov eax, 4
je 0x430c25
lea ecx, [esp + 0x14]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430a6b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430a53
test eax, eax
je 0x430ac8
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430aba
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430ac8
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430aba
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430ac8
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430aba
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430ac8
movzx esi, byte [edx]
movzx eax, byte [ecx]
sub esi, eax
je 0x430ac8
test esi, esi
mov eax, 1
jg 0x430aca
or eax, 0xffffffff
jmp 0x430aca
xor eax, eax
test eax, eax
jne 0x430ad2
or dword [ebp + 0x6c], 4
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc4]
push ecx
push edx
push ebp
call fcn.0043d310
add esp, 0xc
mov eax, 4
lea ecx, [esp + 0x1c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430b0b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430af3
test eax, eax
je 0x430b68
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430b5a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430b68
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430b5a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430b68
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430b5a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430b68
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x430b68
test esi, esi
mov eax, 1
jg 0x430b6a
or eax, 0xffffffff
jmp 0x430b6a
xor eax, eax
test eax, eax
jne 0x430b77
or dword [ebp + 0x6c], 2
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x14]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430b9a
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430b82
test eax, eax
je 0x430bf7
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430be9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430bf7
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430be9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430bf7
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430be9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430bf7
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x430bf7
test esi, esi
mov eax, 1
jg 0x430bf9
or eax, 0xffffffff
jmp 0x430bf9
xor eax, eax
test eax, eax
jne 0x430845
mov eax, dword [ebp + 0x6c]
test al, 1
jne 0x431841
push str.Missing_IHDR_before_IDAT
push ebp
call fcn.00434200
add esp, 8
pop edi
pop esi
pop ebx
pop ebp
add esp, 0xac
ret
lea ecx, [esp + 0x1c]
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430c48
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430c30
test eax, eax
je 0x430ca5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430c97
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430ca5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430c97
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430ca5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430c97
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430ca5
movzx eax, byte [ecx]
movzx esi, byte [edx]
sub esi, eax
je 0x430ca5
test esi, esi
mov eax, 1
jg 0x430ca7
or eax, 0xffffffff
jmp 0x430ca7
xor eax, eax
test eax, eax
jne 0x430cc6
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc4]
push ecx
push edx
push ebp
call fcn.0043ad50
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x14]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430ce9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430cd1
test eax, eax
je 0x430d46
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430d38
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430d46
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430d38
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430d46
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430d38
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430d46
movzx esi, byte [edx]
movzx eax, byte [ecx]
sub esi, eax
je 0x430d46
test esi, esi
mov eax, 1
jg 0x430d48
or eax, 0xffffffff
jmp 0x430d48
xor eax, eax
test eax, eax
je 0x431867
mov eax, 4
lea ecx, [esp + 0x3c]
mov edx, edi
jmp 0x430d60
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430d78
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430d60
test eax, eax
je 0x430dd5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430dc7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430dd5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430dc7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430dd5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430dc7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430dd5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x430dd5
test esi, esi
mov eax, 1
jg 0x430dd7
or eax, 0xffffffff
jmp 0x430dd7
xor eax, eax
test eax, eax
jne 0x430df6
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043c040
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x7c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430e19
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430e01
test eax, eax
je 0x430e76
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430e68
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430e76
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430e68
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430e76
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430e68
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430e76
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x430e76
test esi, esi
mov eax, 1
jg 0x430e78
or eax, 0xffffffff
jmp 0x430e78
xor eax, eax
test eax, eax
jne 0x430e97
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043b250
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x4c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430eba
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430ea2
test eax, eax
je 0x430f17
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430f09
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430f17
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430f09
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430f17
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x430f09
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430f17
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x430f17
test esi, esi
mov eax, 1
jg 0x430f19
or eax, 0xffffffff
jmp 0x430f19
xor eax, eax
test eax, eax
jne 0x430f38
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043af40
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x9c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430f5e
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430f46
test eax, eax
je 0x430fbb
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430fad
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430fbb
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430fad
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430fbb
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x430fad
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x430fbb
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x430fbb
test esi, esi
mov eax, 1
jg 0x430fbd
or eax, 0xffffffff
jmp 0x430fbd
xor eax, eax
test eax, eax
jne 0x430fdc
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043c260
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x5c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x430fff
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x430fe7
test eax, eax
je 0x43105c
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43104e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43105c
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43104e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43105c
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43104e
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43105c
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x43105c
test esi, esi
mov eax, 1
jg 0x43105e
or eax, 0xffffffff
jmp 0x43105e
xor eax, eax
test eax, eax
jne 0x43107d
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043c500
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x24]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4310a0
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x431088
test eax, eax
je 0x4310fd
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x4310ef
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4310fd
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x4310ef
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4310fd
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x4310ef
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4310fd
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x4310fd
test esi, esi
mov eax, 1
jg 0x4310ff
or eax, 0xffffffff
jmp 0x4310ff
xor eax, eax
test eax, eax
jne 0x43111e
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043c620
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x6c]
mov edx, edi
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x431148
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x431130
test eax, eax
je 0x4311a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x431197
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4311a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x431197
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4311a5
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x431197
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4311a5
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x4311a5
test esi, esi
mov eax, 1
jg 0x4311a7
or eax, 0xffffffff
jmp 0x4311a7
xor eax, eax
test eax, eax
jne 0x4311c6
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043c940
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x2c]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4311e9
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4311d1
test eax, eax
je 0x431246
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x431238
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431246
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x431238
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431246
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x431238
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431246
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x431246
test esi, esi
mov eax, 1
jg 0x431248
or eax, 0xffffffff
jmp 0x431248
xor eax, eax
test eax, eax
jne 0x431267
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043c3e0
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x34]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x43128a
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x431272
test eax, eax
je 0x4312e7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4312d9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4312e7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4312d9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4312e7
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4312d9
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4312e7
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x4312e7
test esi, esi
mov eax, 1
jg 0x4312e9
or eax, 0xffffffff
jmp 0x4312e9
xor eax, eax
test eax, eax
jne 0x431308
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043b0d0
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x44]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x43132b
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x431313
test eax, eax
je 0x431388
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43137a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431388
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43137a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431388
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43137a
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431388
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x431388
test esi, esi
mov eax, 1
jg 0x43138a
or eax, 0xffffffff
jmp 0x43138a
xor eax, eax
test eax, eax
jne 0x4313a9
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043b670
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x54]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4313cc
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4313b4
test eax, eax
je 0x431429
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43141b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431429
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43141b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431429
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43141b
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431429
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x431429
test esi, esi
mov eax, 1
jg 0x43142b
or eax, 0xffffffff
jmp 0x43142b
xor eax, eax
test eax, eax
jne 0x43144a
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043b880
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x64]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x43146d
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x431455
test eax, eax
je 0x4314ca
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x4314bc
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4314ca
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x4314bc
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4314ca
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x4314bc
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4314ca
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x4314ca
test esi, esi
mov eax, 1
jg 0x4314cc
or eax, 0xffffffff
jmp 0x4314cc
xor eax, eax
test eax, eax
jne 0x4314eb
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043baf0
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x74]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x43150e
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4314f6
test eax, eax
je 0x43156b
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43155d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43156b
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43155d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43156b
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x43155d
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43156b
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x43156b
test esi, esi
mov eax, 1
jg 0x43156d
or eax, 0xffffffff
jmp 0x43156d
xor eax, eax
test eax, eax
jne 0x43158c
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043cc70
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x84]
mov edx, edi
lea ebx, [ebx]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4315b8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4315a0
test eax, eax
je 0x431615
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x431607
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431615
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x431607
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431615
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x431607
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431615
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x431615
test esi, esi
mov eax, 1
jg 0x431617
or eax, 0xffffffff
jmp 0x431617
xor eax, eax
test eax, eax
jne 0x431636
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043cb60
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0x94]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x43165c
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x431644
test eax, eax
je 0x4316b9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4316ab
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4316b9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4316ab
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4316b9
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4316ab
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x4316b9
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x4316b9
test esi, esi
mov eax, 1
jg 0x4316bb
or eax, 0xffffffff
jmp 0x4316bb
xor eax, eax
test eax, eax
jne 0x4316da
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043bde0
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0xa4]
mov edx, edi
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x431700
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x4316e8
test eax, eax
je 0x43175d
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43174f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43175d
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43174f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43175d
movzx esi, byte [edx]
movzx ebx, byte [ecx]
sub esi, ebx
jne 0x43174f
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x43175d
movzx esi, byte [edx]
movzx ecx, byte [ecx]
sub esi, ecx
je 0x43175d
test esi, esi
mov eax, 1
jg 0x43175f
or eax, 0xffffffff
jmp 0x43175f
xor eax, eax
test eax, eax
jne 0x43177e
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043ce30
add esp, 0xc
jmp 0x430845
mov eax, 4
lea ecx, [esp + 0xb4]
mov edx, edi
lea esp, [esp]
mov esi, dword [edx]
cmp esi, dword [ecx]
jne 0x4317a8
sub eax, 4
add ecx, 4
add edx, 4
cmp eax, 4
jae 0x431790
test eax, eax
je 0x431805
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4317f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431805
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4317f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431805
movzx ebx, byte [ecx]
movzx esi, byte [edx]
sub esi, ebx
jne 0x4317f7
sub eax, 1
add ecx, 1
add edx, 1
test eax, eax
je 0x431805
movzx ecx, byte [ecx]
movzx esi, byte [edx]
sub esi, ecx
je 0x431805
test esi, esi
mov eax, 1
jg 0x431807
or eax, 0xffffffff
jmp 0x431807
xor eax, eax
test eax, eax
jne 0x431826
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0xc4]
push edx
push eax
push ebp
call fcn.0043d050
add esp, 0xc
jmp 0x430845
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xc4]
push ecx
push edx
push ebp
call fcn.0043d310
add esp, 0xc
jmp 0x430845
cmp byte [ebp + 0x12a], 3
jne 0x43189e
test al, 2
jne 0x43189e
push str.Missing_PLTE_before_IDAT
push ebp
call fcn.00434200
add esp, 8
pop edi
pop esi
pop ebx
pop ebp
add esp, 0xac
ret
mov eax, dword [ebp + 0x6c]
test al, 1
jne 0x431875
push str.Missing_IHDR_before_IDAT
jmp 0x431887
cmp byte [ebp + 0x12a], 3
jne 0x431890
test al, 2
jne 0x431890
push str.Missing_PLTE_before_IDAT
push ebp
call fcn.00434200
add esp, 8
mov eax, dword [esp + 0x10]
or dword [ebp + 0x6c], 4
mov dword [ebp + 0x110], eax
pop edi
pop esi
pop ebx
pop ebp
add esp, 0xac
ret