Function at 0x1011ed10
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10150081
mov eax, dword fs:[0]
push eax
sub esp, 0x944
mov eax, dword [0x1019c020]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x950], esi
cmp dword [esi + 4], 0
jne 0x1011ed53
xor al, al
jmp 0x10120aa7
cmp word [esi + 0x16], 1
jne 0x1011ed61
mov al, 1
jmp 0x10120aa7
call sym.FreeImageRender.dll_public:_bool___thiscall_CxImage::GrayScale_void_
push 0
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::constructor_unsigned_int_
push esi
lea ecx, [ebp - 0x924]
mov dword [ebp - 4], 0
call sym.FreeImageRender.dll_protected:_void___thiscall_CxImage::CopyInfo_class_CxImage_const__
push dword [esi + 0x40]
lea ecx, [ebp - 0x924]
push 1
push dword [esi + 0x10]
push dword [esi + 0xc]
call sym.FreeImageRender.dll_public:_void____thiscall_CxImage::Create_unsigned_int__unsigned_int__unsigned_int__unsigned_int_
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public_virtual:_bool___thiscall_CxMemFile::Flush_void_
lea ecx, [ebp - 0x924]
test al, al
jne 0x1011edd4
call sym.FreeImageRender.dll_public:_char_const____thiscall_CxImage::GetLastError_void_
sub esi, eax
nop dword [eax + eax]
mov cl, byte [eax]
lea eax, [eax + 1]
mov byte [esi + eax + 0x43], cl
test cl, cl
jne 0x1011edc0
xor bl, bl
jmp 0x10120a7e
push esi
call sym.FreeImageRender.dll_public:_bool___thiscall_CxImage::SelectionCopy_class_CxImage__
push esi
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_bool___thiscall_CxImage::AlphaCopy_class_CxImage__
mov eax, dword [ebp + 8]
dec eax
cmp eax, 8
ja case.default.0x1011edf3
jmp dword [eax*4 + 0x10120ac8]
movaps xmm0, xmmword [0x10152ac0]
xor ecx, ecx
movups xmmword [ebp - 0x50], xmm0
mov word [ebp - 0x938], 0x100
movaps xmm0, xmmword [0x10152aa0]
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x930], ecx
movaps xmm0, xmmword [0x10152ab0]
movups xmmword [ebp - 0x30], xmm0
movaps xmm0, xmmword [0x10152a90]
movups xmmword [ebp - 0x20], xmm0
cmp dword [esi + 0x10], ecx
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x940], eax
nop dword [eax + eax]
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
xor ebx, ebx
cmp dword [esi + 0xc], ebx
jle 0x1011ef08
mov eax, ecx
and eax, 3
shl eax, 2
mov dword [ebp - 0x934], eax
push ecx
push ebx
mov ecx, esi
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
movzx ecx, al
mov eax, 0x80808081
shl ecx, 4
imul ecx
add edx, ecx
sar edx, 7
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, eax
and edx, reloc.WS2_32.dll_ntohs
jns 0x1011eeb1
dec edx
or edx, 0xfffffff0
inc edx
mov edi, eax
test edi, edi
jns 0x1011eeba
add edi, 0xf
sar edi, 4
mov eax, ebx
lea ecx, [ebp - 0x937]
and eax, 3
add eax, dword [ebp - 0x934]
cmp dword [ebp + eax*4 - 0x50], edx
lea eax, [ebp - 0x938]
cmovge ecx, eax
movzx eax, byte [edi + ecx]
lea ecx, [ebp - 0x924]
push eax
push dword [ebp - 0x930]
push ebx
call sym.FreeImageRender.dll_protected:_void___thiscall_CxImage::BlindSetPixelIndex_int__int__unsigned_char_
mov esi, dword [ebp - 0x950]
inc ebx
mov ecx, dword [ebp - 0x930]
cmp ebx, dword [esi + 0xc]
jl 0x1011ee80
mov eax, dword [ebp - 0x940]
inc ecx
add eax, 0x64
mov dword [ebp - 0x930], ecx
mov dword [ebp - 0x940], eax
cmp ecx, dword [esi + 0x10]
jl 0x1011ee50
jmp 0x10120a39
xor ebx, ebx
mov edi, 1
mov dword [ebp - 0x928], ebx
cmp dword [esi + 0x10], ebx
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x948], eax
nop word [eax + eax]
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
cmp dword [esi + 0xc], 0
jle 0x1011f181
mov ecx, 2
mov dword [ebp - 0x93c], ecx
mov dword [ebp - 0x940], ecx
lea eax, [ecx - 2]
mov ecx, esi
push ebx
push eax
mov dword [ebp - 0x930], eax
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
mov byte [ebp - 0x935], al
lea ecx, [ebp - 0x924]
cmp al, 0x80
jbe 0x1011efc0
push 1
push ebx
push dword [ebp - 0x930]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
sub eax, 0xff
jmp 0x1011efd5
push 0
push ebx
push dword [ebp - 0x930]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
mov dword [ebp - 0x930], eax
mov ecx, esi
mov eax, dword [ebp - 0x93c]
dec eax
push ebx
push eax
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov eax, dword [ebp - 0x930]
shl eax, 3
cdq
and edx, 0x1f
add eax, edx
mov edx, 0
sar eax, 5
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f022
mov byte [ebp - 0x92c], 0xff
jmp 0x1011f032
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x92c], al
push dword [ebp - 0x92c]
mov ecx, esi
push ebx
push dword [ebp - 0x934]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push ebx
push dword [ebp - 0x93c]
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov eax, dword [ebp - 0x930]
shl eax, 2
cdq
and edx, 0x1f
add eax, edx
mov edx, 0
sar eax, 5
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f085
mov byte [ebp - 0x92c], 0xff
jmp 0x1011f095
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x92c], al
push dword [ebp - 0x92c]
mov ecx, esi
push ebx
mov ebx, dword [ebp - 0x93c]
push ebx
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
add ebx, 0xfffffffc
mov dword [ebp - 0x938], 5
nop word [eax + eax]
mov eax, dword [ebp - 0x940]
add eax, ebx
cmp eax, 4
ja case.default.0x1011f0cd
jmp dword [eax*4 + 0x10120aec]
mov edi, 4
jmp case.default.0x1011f0cd
mov edi, 8
jmp case.default.0x1011f0cd
mov edi, 2
mov eax, dword [ebp - 0x928]
mov ecx, esi
inc eax
push eax
push ebx
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov eax, dword [ebp - 0x930]
imul eax, edi
cdq
and edx, 0x1f
add eax, edx
mov edx, 0
sar eax, 5
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f128
mov byte [ebp - 0x92c], 0xff
jmp 0x1011f138
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x92c], al
push dword [ebp - 0x92c]
mov eax, dword [ebp - 0x928]
mov ecx, esi
inc eax
push eax
push ebx
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc ebx
sub dword [ebp - 0x938], 1
jne 0x1011f0c0
mov ecx, dword [ebp - 0x93c]
dec dword [ebp - 0x940]
inc ecx
mov ebx, dword [ebp - 0x928]
mov dword [ebp - 0x93c], ecx
lea eax, [ecx - 2]
cmp eax, dword [esi + 0xc]
jl 0x1011ef82
mov eax, dword [ebp - 0x948]
inc ebx
add eax, 0x64
mov dword [ebp - 0x928], ebx
mov dword [ebp - 0x948], eax
cmp ebx, dword [esi + 0x10]
jl 0x1011ef50
jmp 0x10120a39
xor edi, edi
mov ebx, 1
mov dword [ebp - 0x92c], edi
cmp dword [esi + 0x10], edi
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x944], eax
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
cmp dword [esi + 0xc], 0
jle 0x1011f4ff
mov ecx, 2
mov dword [ebp - 0x930], ecx
mov dword [ebp - 0x940], ecx
lea eax, [ecx - 2]
mov ecx, esi
push edi
push eax
mov dword [ebp - 0x948], eax
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
mov byte [ebp - 0x935], al
lea ecx, [ebp - 0x924]
cmp al, 0x80
jbe 0x1011f233
push 1
push edi
push dword [ebp - 0x948]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
sub eax, 0xff
jmp 0x1011f248
push 0
push edi
push dword [ebp - 0x948]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
mov dword [ebp - 0x93c], eax
mov ecx, esi
mov eax, dword [ebp - 0x930]
dec eax
push edi
push eax
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ecx, dword [ebp - 0x93c]
movzx edi, al
mov eax, 0x30c30c31
shl ecx, 3
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f29d
mov byte [ebp - 0x928], 0xff
jmp 0x1011f2ad
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x92c]
mov ecx, esi
push edi
push dword [ebp - 0x934]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push edi
push dword [ebp - 0x930]
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx edi, al
mov eax, dword [ebp - 0x93c]
lea ecx, [eax*4]
mov eax, 0x30c30c31
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f312
mov byte [ebp - 0x928], 0xff
jmp 0x1011f322
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x930]
mov ecx, esi
push dword [ebp - 0x92c]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
lea eax, [edi - 4]
mov dword [ebp - 0x94c], 5
mov edi, eax
mov dword [ebp - 0x938], eax
mov dword [ebp - 0x948], edi
nop word [eax + eax]
mov eax, dword [ebp - 0x940]
add eax, edi
cmp eax, 4
ja case.default.0x1011f36d
jmp dword [eax*4 + 0x10120b00]
mov ebx, 4
jmp case.default.0x1011f36d
mov ebx, 8
jmp case.default.0x1011f36d
mov ebx, 2
mov eax, dword [ebp - 0x92c]
mov ecx, esi
inc eax
push eax
push edi
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ecx, dword [ebp - 0x93c]
imul ecx, ebx
movzx edi, al
mov eax, 0x30c30c31
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f3d6
mov byte [ebp - 0x928], 0xff
jmp 0x1011f3e6
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x948]
mov ecx, esi
push dword [ebp - 0x934]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
sub dword [ebp - 0x94c], 1
mov dword [ebp - 0x948], edi
jne 0x1011f360
mov edi, dword [ebp - 0x938]
mov dword [ebp - 0x94c], 5
mov eax, dword [ebp - 0x940]
add eax, edi
cmp eax, 4
ja case.default.0x1011f431
jmp dword [eax*4 + 0x10120b14]
mov ebx, 2
jmp case.default.0x1011f431
mov ebx, 4
jmp case.default.0x1011f431
mov ebx, 1
mov eax, dword [ebp - 0x92c]
mov ecx, esi
add eax, 2
push eax
push edi
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ecx, dword [ebp - 0x93c]
imul ecx, ebx
movzx edi, al
mov eax, 0x30c30c31
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f49c
mov byte [ebp - 0x928], 0xff
jmp 0x1011f4ac
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x938]
mov ecx, esi
push dword [ebp - 0x934]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
sub dword [ebp - 0x94c], 1
mov dword [ebp - 0x938], edi
jne 0x1011f424
mov ecx, dword [ebp - 0x930]
dec dword [ebp - 0x940]
inc ecx
mov edi, dword [ebp - 0x92c]
mov dword [ebp - 0x930], ecx
lea eax, [ecx - 2]
cmp eax, dword [esi + 0xc]
jl 0x1011f1f5
mov eax, dword [ebp - 0x944]
inc edi
add eax, 0x64
mov dword [ebp - 0x92c], edi
mov dword [ebp - 0x944], eax
cmp edi, dword [esi + 0x10]
jl 0x1011f1c3
jmp 0x10120a39
xor edi, edi
mov ebx, 1
mov dword [ebp - 0x92c], edi
cmp dword [esi + 0x10], edi
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x948], eax
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
cmp dword [esi + 0xc], 0
jle 0x1011f87f
mov ecx, 2
mov dword [ebp - 0x93c], ecx
mov dword [ebp - 0x940], ecx
lea eax, [ecx - 2]
mov ecx, esi
push edi
push eax
mov dword [ebp - 0x944], eax
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
mov byte [ebp - 0x935], al
lea ecx, [ebp - 0x924]
cmp al, 0x80
jbe 0x1011f5b1
push 1
push edi
push dword [ebp - 0x944]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
sub eax, 0xff
jmp 0x1011f5c6
push 0
push edi
push dword [ebp - 0x944]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
mov dword [ebp - 0x930], eax
mov ecx, esi
mov eax, dword [ebp - 0x93c]
dec eax
push edi
push eax
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx edi, al
mov eax, dword [ebp - 0x930]
lea ecx, [eax*8]
sub ecx, eax
mov eax, 0x2aaaaaab
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f621
mov byte [ebp - 0x928], 0xff
jmp 0x1011f631
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x92c]
mov ecx, esi
push edi
push dword [ebp - 0x934]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push edi
push dword [ebp - 0x93c]
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx edi, al
mov eax, dword [ebp - 0x930]
lea ecx, [eax + eax*4]
mov eax, 0x2aaaaaab
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f692
mov byte [ebp - 0x928], 0xff
jmp 0x1011f6a2
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x93c]
mov ecx, esi
push dword [ebp - 0x92c]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
lea eax, [edi - 4]
mov dword [ebp - 0x94c], 5
mov edi, eax
mov dword [ebp - 0x938], eax
mov dword [ebp - 0x944], edi
nop word [eax + eax]
mov eax, dword [ebp - 0x940]
add eax, edi
cmp eax, 4
ja case.default.0x1011f6ed
jmp dword [eax*4 + 0x10120b28]
mov ebx, 5
jmp case.default.0x1011f6ed
mov ebx, 7
jmp case.default.0x1011f6ed
mov ebx, 3
mov eax, dword [ebp - 0x92c]
mov ecx, esi
inc eax
push eax
push edi
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ecx, dword [ebp - 0x930]
imul ecx, ebx
movzx edi, al
mov eax, 0x2aaaaaab
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f756
mov byte [ebp - 0x928], 0xff
jmp 0x1011f766
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x944]
mov ecx, esi
push dword [ebp - 0x934]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
sub dword [ebp - 0x94c], 1
mov dword [ebp - 0x944], edi
jne 0x1011f6e0
mov edi, dword [ebp - 0x938]
mov dword [ebp - 0x944], 5
mov eax, dword [ebp - 0x940]
add eax, edi
cmp eax, 4
ja case.default.0x1011f7b1
jmp dword [eax*4 + 0x10120b3c]
mov ebx, 3
jmp case.default.0x1011f7b1
mov ebx, 5
jmp case.default.0x1011f7b1
mov ebx, 1
mov eax, dword [ebp - 0x92c]
mov ecx, esi
add eax, 2
push eax
push edi
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ecx, dword [ebp - 0x930]
imul ecx, ebx
movzx edi, al
mov eax, 0x2aaaaaab
imul ecx
sar edx, 3
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f81c
mov byte [ebp - 0x928], 0xff
jmp 0x1011f82c
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x938]
mov ecx, esi
push dword [ebp - 0x934]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
sub dword [ebp - 0x944], 1
mov dword [ebp - 0x938], edi
jne 0x1011f7a4
mov ecx, dword [ebp - 0x93c]
dec dword [ebp - 0x940]
inc ecx
mov edi, dword [ebp - 0x92c]
mov dword [ebp - 0x93c], ecx
lea eax, [ecx - 2]
cmp eax, dword [esi + 0xc]
jl 0x1011f573
mov eax, dword [ebp - 0x948]
inc edi
add eax, 0x64
mov dword [ebp - 0x92c], edi
mov dword [ebp - 0x948], eax
cmp edi, dword [esi + 0x10]
jl 0x1011f541
jmp 0x10120a39
xor ebx, ebx
mov edi, 1
mov dword [ebp - 0x92c], ebx
cmp dword [esi + 0x10], ebx
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x94c], eax
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
xor eax, eax
mov dword [ebp - 0x93c], eax
cmp dword [esi + 0xc], eax
jle 0x1011fb97
mov dword [ebp - 0x930], 2
push ebx
push eax
mov ecx, esi
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
mov byte [ebp - 0x935], al
lea ecx, [ebp - 0x924]
cmp al, 0x80
jbe 0x1011f929
push 1
push ebx
push dword [ebp - 0x93c]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx ebx, byte [ebp - 0x935]
sub ebx, 0xff
jmp 0x1011f93e
push 0
push ebx
push dword [ebp - 0x93c]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx ebx, byte [ebp - 0x935]
mov eax, dword [ebp - 0x93c]
mov ecx, esi
push dword [ebp - 0x92c]
add eax, 2
mov dword [ebp - 0x940], ebx
mov dword [ebp - 0x944], eax
dec eax
push eax
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
lea eax, [ebx + ebx*4]
cdq
and edx, 0x1f
add eax, edx
mov edx, 0
sar eax, 5
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f993
mov byte [ebp - 0x928], 0xff
jmp 0x1011f9a3
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ecx, esi
push dword [ebp - 0x92c]
push dword [ebp - 0x934]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push dword [ebp - 0x92c]
mov ecx, esi
push dword [ebp - 0x944]
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
lea eax, [ebx + ebx*2]
cdq
and edx, 0x1f
add eax, edx
mov edx, 0
sar eax, 5
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011f9fa
mov byte [ebp - 0x928], 0xff
jmp 0x1011fa0a
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ebx, dword [ebp - 0x944]
mov ecx, esi
push dword [ebp - 0x92c]
push ebx
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
add ebx, 0xfffffffc
mov dword [ebp - 0x944], 5
mov eax, dword [ebp - 0x930]
add eax, ebx
cmp eax, 4
ja case.default.0x1011fa3e
jmp dword [eax*4 + 0x10120b50]
mov edi, 4
jmp case.default.0x1011fa3e
mov edi, 5
jmp case.default.0x1011fa3e
mov edi, 2
mov eax, dword [ebp - 0x92c]
mov ecx, esi
inc eax
push eax
push ebx
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov eax, dword [ebp - 0x940]
imul eax, edi
cdq
and edx, 0x1f
add eax, edx
mov edx, 0
sar eax, 5
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fa9f
mov byte [ebp - 0x928], 0xff
jmp 0x1011faaf
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ecx, esi
push dword [ebp - 0x934]
push ebx
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc ebx
sub dword [ebp - 0x944], 1
jne 0x1011fa31
or ebx, 0xffffffff
cmp ebx, 0xffffffff
je 0x1011fae2
test ebx, ebx
je 0x1011fb38
cmp ebx, 1
jne 0x1011fae7
mov edi, 2
mov eax, dword [ebp - 0x92c]
mov ecx, dword [ebp - 0x93c]
add eax, 2
add ecx, ebx
mov dword [ebp - 0x934], eax
push eax
push ecx
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov eax, dword [ebp - 0x940]
imul eax, edi
cdq
and edx, 0x1f
add eax, edx
mov edx, 0
sar eax, 5
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fb3f
mov byte [ebp - 0x928], 0xff
jmp 0x1011fb4f
mov edi, 3
jmp 0x1011fae7
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov eax, dword [ebp - 0x93c]
mov ecx, esi
push dword [ebp - 0x934]
add eax, ebx
push eax
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc ebx
cmp ebx, 2
jl 0x1011fad4
mov eax, dword [ebp - 0x93c]
dec dword [ebp - 0x930]
inc eax
mov ebx, dword [ebp - 0x92c]
mov dword [ebp - 0x93c], eax
cmp eax, dword [esi + 0xc]
jl 0x1011f8f3
mov eax, dword [ebp - 0x94c]
inc ebx
add eax, 0x64
mov dword [ebp - 0x92c], ebx
mov dword [ebp - 0x94c], eax
cmp ebx, dword [esi + 0x10]
jl 0x1011f8c1
jmp 0x10120a39
cmp dword [esi + 0x10], 0
jle 0x10120a39
mov ecx, 1
xor edx, edx
mov dword [ebp - 0x92c], ecx
mov dword [ebp - 0x934], edx
mov eax, edx
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
cmp dword [esi + 0xc], 0
jle 0x10120153
mov edi, 2
mov dword [ebp - 0x93c], edi
lea ebx, [ecx - 1]
mov ecx, esi
lea eax, [edi - 2]
mov dword [ebp - 0x944], ebx
push ebx
push eax
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
mov byte [ebp - 0x935], al
lea ecx, [edi - 2]
cmp al, 0x80
jbe 0x1011fc46
push 1
push ebx
push ecx
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx ebx, byte [ebp - 0x935]
sub ebx, 0xff
jmp 0x1011fc5c
push 0
push ebx
push ecx
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx ebx, byte [ebp - 0x935]
push dword [ebp - 0x944]
mov ecx, esi
push edi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx edi, al
mov ecx, ebx
shl ecx, 5
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fc9f
mov byte [ebp - 0x928], 0xff
jmp 0x1011fcaf
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x93c]
mov ecx, esi
push dword [ebp - 0x944]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push dword [ebp - 0x92c]
lea eax, [edi - 5]
mov dword [ebp - 0x94c], eax
lea ecx, [ebx + ebx*2]
shl ecx, 2
mov eax, 0x51eb851f
imul ecx
mov ecx, esi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x940], eax
lea eax, [edi - 5]
push eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, dword [ebp - 0x940]
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fd23
mov byte [ebp - 0x928], 0xff
jmp 0x1011fd33
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
lea eax, [edi - 5]
mov ecx, esi
push dword [ebp - 0x92c]
push eax
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push dword [ebp - 0x92c]
imul ecx, ebx, 0x1a
lea eax, [edi - 3]
mov dword [ebp - 0x948], eax
mov eax, 0x51eb851f
imul ecx
mov ecx, esi
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x944], eax
lea eax, [edi - 3]
push eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, dword [ebp - 0x944]
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fda1
mov byte [ebp - 0x928], 0xff
jmp 0x1011fdb1
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
lea eax, [edi - 3]
mov ecx, esi
push dword [ebp - 0x92c]
push eax
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push dword [ebp - 0x92c]
lea eax, [edi - 1]
mov ecx, esi
push eax
mov dword [ebp - 0x938], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ecx, ebx
movzx edi, al
shl ecx, 4
mov eax, 0x51eb851f
sub ecx, ebx
add ecx, ecx
imul ecx
sar edx, 6
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fe18
mov byte [ebp - 0x928], 0xff
jmp 0x1011fe28
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x92c]
mov ecx, esi
push edi
push dword [ebp - 0x938]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
mov eax, dword [ebp - 0x93c]
mov ecx, esi
inc eax
push edi
push eax
mov dword [ebp - 0x950], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx edi, al
mov ecx, ebx
shl ecx, 4
mov eax, 0x51eb851f
imul ecx
sar edx, 6
mov ecx, edx
add edi, edx
shr ecx, 0x1f
mov edx, 0
add ecx, edi
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fe8d
mov byte [ebp - 0x928], 0xff
jmp 0x1011fe9d
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov edi, dword [ebp - 0x92c]
mov ecx, esi
push edi
push dword [ebp - 0x950]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
lea eax, [edi + 1]
mov edi, dword [ebp - 0x93c]
push eax
mov dword [ebp - 0x930], eax
lea ecx, [edi - 4]
push ecx
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, dword [ebp - 0x940]
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011fef5
mov byte [ebp - 0x928], 0xff
jmp 0x1011ff05
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
lea eax, [edi - 4]
mov ecx, esi
push dword [ebp - 0x930]
push eax
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push dword [ebp - 0x930]
lea eax, [edi - 2]
mov ecx, esi
push eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, dword [ebp - 0x944]
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011ff50
mov byte [ebp - 0x928], 0xff
jmp 0x1011ff60
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
lea eax, [edi - 2]
mov ecx, esi
push dword [ebp - 0x930]
push eax
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push dword [ebp - 0x930]
mov ecx, esi
push edi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, dword [ebp - 0x940]
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1011ffa8
mov byte [ebp - 0x928], 0xff
jmp 0x1011ffb8
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ecx, esi
push dword [ebp - 0x930]
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
mov edi, dword [ebp - 0x92c]
lea ecx, [ebx + ebx*4]
mov eax, 0x51eb851f
add edi, 2
imul ecx
push edi
push dword [ebp - 0x94c]
sar edx, 6
mov ecx, esi
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
mov dword [ebp - 0x944], ebx
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, ebx
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1012001c
mov byte [ebp - 0x928], 0xff
jmp 0x1012002c
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ecx, esi
push edi
push dword [ebp - 0x94c]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push edi
push dword [ebp - 0x948]
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ebx, dword [ebp - 0x940]
mov edx, 0
movzx ecx, al
add ecx, ebx
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x10120073
mov byte [ebp - 0x928], 0xff
jmp 0x10120083
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ecx, esi
push edi
push dword [ebp - 0x948]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
push edi
push dword [ebp - 0x938]
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, ebx
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x101200c4
mov byte [ebp - 0x928], 0xff
jmp 0x101200d4
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ecx, esi
push edi
push dword [ebp - 0x938]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
mov ebx, dword [ebp - 0x950]
mov ecx, esi
push edi
push ebx
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov edx, 0
add ecx, dword [ebp - 0x944]
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x1012011a
mov byte [ebp - 0x928], 0xff
jmp 0x1012012a
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x928], al
push dword [ebp - 0x928]
mov ecx, esi
push edi
push ebx
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
mov ecx, dword [ebp - 0x92c]
mov edi, ebx
mov dword [ebp - 0x93c], ebx
lea eax, [edi - 2]
cmp eax, dword [esi + 0xc]
jl 0x1011fc06
mov edx, dword [ebp - 0x934]
inc ecx
add edx, 0x64
mov dword [ebp - 0x92c], ecx
mov dword [ebp - 0x934], edx
lea eax, [ecx - 1]
cmp eax, dword [esi + 0x10]
jl 0x1011fbd8
jmp 0x10120a39
push 0x100
call fcn.1012f850
add esp, 4
mov dword [ebp - 0x940], eax
xor ecx, ecx
mov esi, eax
mov dword [ebp - 0x934], ecx
mov eax, ecx
mov ebx, 4
cdq
and edx, 3
lea edi, [edx + eax]
mov edx, ecx
sar edi, 2
and edx, 0x80000003
jns 0x101201b7
dec edx
or edx, 0xfffffffc
inc edx
xor eax, eax
nop dword [eax]
mov ecx, edx
add eax, eax
xor ecx, edi
dec ebx
and ecx, 1
sar edi, 1
or ecx, eax
mov eax, edx
add ecx, ecx
sar edx, 1
and eax, 1
or eax, ecx
test ebx, ebx
jg 0x101201c0
mov ecx, dword [ebp - 0x934]
mov byte [ecx + esi], al
inc ecx
mov dword [ebp - 0x934], ecx
cmp ecx, 0x100
jl 0x10120197
mov esi, dword [ebp - 0x950]
xor ebx, ebx
cmp dword [esi + 0x10], ebx
jle 0x101202a5
xor eax, eax
mov dword [ebp - 0x934], eax
nop
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x101202a5
xor edi, edi
cmp dword [esi + 0xc], edi
jle 0x1012028c
mov eax, ebx
and eax, 0x80000003
jns 0x1012023c
dec eax
or eax, 0xfffffffc
inc eax
shl eax, 2
mov dword [ebp - 0x950], eax
push ebx
push edi
mov ecx, esi
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
movzx ecx, al
mov eax, edi
and eax, 0x80000003
jns 0x1012025f
dec eax
or eax, 0xfffffffc
inc eax
add eax, dword [ebp - 0x950]
mov edx, dword [ebp - 0x940]
movzx eax, byte [eax + edx]
cmp ecx, eax
lea ecx, [ebp - 0x924]
jbe 0x1012027d
push 1
jmp 0x1012027f
push 0
push ebx
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
cmp edi, dword [esi + 0xc]
jl 0x10120245
mov eax, dword [ebp - 0x934]
inc ebx
add eax, 0x64
mov dword [ebp - 0x934], eax
cmp ebx, dword [esi + 0x10]
jl 0x10120210
push dword [ebp - 0x940]
call fcn.1012f84b
add esp, 4
jmp 0x10120a39
movaps xmm0, xmmword [0x10152b90]
xor ebx, ebx
movups xmmword [ebp - 0x150], xmm0
movaps xmm0, xmmword [0x10152bb0]
movups xmmword [ebp - 0x140], xmm0
movaps xmm0, xmmword [0x10152b10]
movups xmmword [ebp - 0x130], xmm0
movaps xmm0, xmmword [0x10152b30]
movups xmmword [ebp - 0x120], xmm0
movaps xmm0, xmmword [0x10152b50]
movups xmmword [ebp - 0x110], xmm0
movaps xmm0, xmmword [0x10152b70]
movups xmmword [ebp - 0x100], xmm0
movaps xmm0, xmmword [0x10152ad0]
movups xmmword [ebp - 0xf0], xmm0
movaps xmm0, xmmword [0x10152af0]
movups xmmword [ebp - 0xe0], xmm0
movaps xmm0, xmmword [0x10152bc0]
movups xmmword [ebp - 0xd0], xmm0
movaps xmm0, xmmword [0x10152ba0]
movups xmmword [ebp - 0xc0], xmm0
movaps xmm0, xmmword [0x10152b40]
movups xmmword [ebp - 0xb0], xmm0
movaps xmm0, xmmword [0x10152b20]
movups xmmword [ebp - 0xa0], xmm0
movaps xmm0, xmmword [0x10152b80]
movups xmmword [ebp - 0x90], xmm0
movaps xmm0, xmmword [0x10152b60]
movups xmmword [ebp - 0x80], xmm0
movaps xmm0, xmmword [0x10152b00]
movups xmmword [ebp - 0x70], xmm0
movaps xmm0, xmmword [0x10152ae0]
movups xmmword [ebp - 0x60], xmm0
cmp dword [esi + 0x10], ebx
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x934], eax
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
xor edi, edi
cmp dword [esi + 0xc], edi
jle 0x10120402
push ebx
push edi
mov ecx, esi
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
movzx edx, al
shr edx, 2
test edx, edx
je 0x101203ed
mov ecx, edi
mov eax, ebx
and ecx, 7
and eax, 7
lea eax, [eax + ecx*8]
cmp edx, dword [ebp + eax*4 - 0x150]
jl 0x101203ed
push 1
jmp 0x101203ef
push 0
push ebx
push edi
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
cmp edi, dword [esi + 0xc]
jl 0x101203c0
mov eax, dword [ebp - 0x934]
inc ebx
add eax, 0x64
mov dword [ebp - 0x934], eax
cmp ebx, dword [esi + 0x10]
jl 0x101203a2
jmp 0x10120a39
movaps xmm0, xmmword [0x10152e80]
movups xmmword [ebp - 0x550], xmm0
movaps xmm0, xmmword [0x10152e40]
movups xmmword [ebp - 0x540], xmm0
movaps xmm0, xmmword [0x10152e50]
movups xmmword [ebp - 0x530], xmm0
movaps xmm0, xmmword [0x10152e10]
movups xmmword [ebp - 0x520], xmm0
movaps xmm0, xmmword [0x10152d80]
movups xmmword [ebp - 0x510], xmm0
movaps xmm0, xmmword [0x10152d40]
movups xmmword [ebp - 0x500], xmm0
movaps xmm0, xmmword [0x10152d50]
movups xmmword [ebp - 0x4f0], xmm0
movaps xmm0, xmmword [0x10152d10]
movups xmmword [ebp - 0x4e0], xmm0
movaps xmm0, xmmword [0x10152f80]
movups xmmword [ebp - 0x4d0], xmm0
movaps xmm0, xmmword [0x10152f40]
movups xmmword [ebp - 0x4c0], xmm0
movaps xmm0, xmmword [0x10152f50]
movups xmmword [ebp - 0x4b0], xmm0
movaps xmm0, xmmword [0x10152f10]
movups xmmword [ebp - 0x4a0], xmm0
movaps xmm0, xmmword [0x10152be0]
movups xmmword [ebp - 0x490], xmm0
movaps xmm0, xmmword [0x10152cc0]
movups xmmword [ebp - 0x480], xmm0
movaps xmm0, xmmword [0x10152bf0]
movups xmmword [ebp - 0x470], xmm0
movaps xmm0, xmmword [0x10152c90]
movups xmmword [ebp - 0x460], xmm0
movaps xmm0, xmmword [0x10152de0]
movups xmmword [ebp - 0x450], xmm0
movaps xmm0, xmmword [0x10152ec0]
movups xmmword [ebp - 0x440], xmm0
movaps xmm0, xmmword [0x10152df0]
movups xmmword [ebp - 0x430], xmm0
movaps xmm0, xmmword [0x10152e90]
movups xmmword [ebp - 0x420], xmm0
movaps xmm0, xmmword [0x10152ce0]
movups xmmword [ebp - 0x410], xmm0
movaps xmm0, xmmword [0x10152dc0]
movups xmmword [ebp - 0x400], xmm0
movaps xmm0, xmmword [0x10152cf0]
movups xmmword [ebp - 0x3f0], xmm0
movaps xmm0, xmmword [0x10152d90]
movups xmmword [ebp - 0x3e0], xmm0
movaps xmm0, xmmword [0x10152ee0]
movups xmmword [ebp - 0x3d0], xmm0
movaps xmm0, xmmword [0x10152fc0]
movups xmmword [ebp - 0x3c0], xmm0
movaps xmm0, xmmword [0x10152ef0]
movups xmmword [ebp - 0x3b0], xmm0
movaps xmm0, xmmword [0x10152f90]
movups xmmword [ebp - 0x3a0], xmm0
movaps xmm0, xmmword [0x10152c60]
movups xmmword [ebp - 0x390], xmm0
movaps xmm0, xmmword [0x10152c20]
movups xmmword [ebp - 0x380], xmm0
movaps xmm0, xmmword [0x10152c70]
movups xmmword [ebp - 0x370], xmm0
movaps xmm0, xmmword [0x10152c30]
movups xmmword [ebp - 0x360], xmm0
movaps xmm0, xmmword [0x10152e60]
movups xmmword [ebp - 0x350], xmm0
movaps xmm0, xmmword [0x10152e20]
movups xmmword [ebp - 0x340], xmm0
movaps xmm0, xmmword [0x10152e70]
movups xmmword [ebp - 0x330], xmm0
movaps xmm0, xmmword [0x10152e30]
movups xmmword [ebp - 0x320], xmm0
movaps xmm0, xmmword [0x10152d60]
movups xmmword [ebp - 0x310], xmm0
movaps xmm0, xmmword [0x10152d20]
movups xmmword [ebp - 0x300], xmm0
movaps xmm0, xmmword [0x10152d70]
movups xmmword [ebp - 0x2f0], xmm0
movaps xmm0, xmmword [0x10152d30]
movups xmmword [ebp - 0x2e0], xmm0
movaps xmm0, xmmword [0x10152f60]
movups xmmword [ebp - 0x2d0], xmm0
xor ebx, ebx
movaps xmm0, xmmword [0x10152f20]
movups xmmword [ebp - 0x2c0], xmm0
movaps xmm0, xmmword [0x10152f70]
movups xmmword [ebp - 0x2b0], xmm0
movaps xmm0, xmmword [0x10152f30]
movups xmmword [ebp - 0x2a0], xmm0
movaps xmm0, xmmword [0x10152c00]
movups xmmword [ebp - 0x290], xmm0
movaps xmm0, xmmword [0x10152ca0]
movups xmmword [ebp - 0x280], xmm0
movaps xmm0, xmmword [0x10152bd0]
movups xmmword [ebp - 0x270], xmm0
movaps xmm0, xmmword [0x10152cb0]
movups xmmword [ebp - 0x260], xmm0
movaps xmm0, xmmword [0x10152e00]
movups xmmword [ebp - 0x250], xmm0
movaps xmm0, xmmword [0x10152ea0]
movups xmmword [ebp - 0x240], xmm0
movaps xmm0, xmmword [str._b0_t1_n2_v3_f4_r5]
movups xmmword [ebp - 0x230], xmm0
movaps xmm0, xmmword [0x10152eb0]
movups xmmword [ebp - 0x220], xmm0
movaps xmm0, xmmword [0x10152d00]
movups xmmword [ebp - 0x210], xmm0
movaps xmm0, xmmword [0x10152da0]
movups xmmword [ebp - 0x200], xmm0
movaps xmm0, xmmword [0x10152cd0]
movups xmmword [ebp - 0x1f0], xmm0
movaps xmm0, xmmword [0x10152db0]
movups xmmword [ebp - 0x1e0], xmm0
movaps xmm0, xmmword [str.e_]
movups xmmword [ebp - 0x1d0], xmm0
movaps xmm0, xmmword [0x10152fa0]
movups xmmword [ebp - 0x1c0], xmm0
movaps xmm0, xmmword [0x10152ed0]
movups xmmword [ebp - 0x1b0], xmm0
movaps xmm0, xmmword [0x10152fb0]
movups xmmword [ebp - 0x1a0], xmm0
movaps xmm0, xmmword [0x10152c80]
movups xmmword [ebp - 0x190], xmm0
movaps xmm0, xmmword [0x10152c40]
movups xmmword [ebp - 0x180], xmm0
movaps xmm0, xmmword [0x10152c50]
movups xmmword [ebp - 0x170], xmm0
movaps xmm0, xmmword [0x10152c10]
movups xmmword [ebp - 0x160], xmm0
cmp dword [esi + 0x10], ebx
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x934], eax
nop
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
xor edi, edi
cmp dword [esi + 0xc], edi
jle 0x1012081c
mov eax, ebx
and eax, 0xf
mov dword [ebp - 0x950], eax
nop dword [eax]
push ebx
push edi
mov ecx, esi
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
movzx ecx, al
mov eax, edi
and eax, 0xf
shl eax, 4
add eax, dword [ebp - 0x950]
cmp ecx, dword [ebp + eax*4 - 0x550]
lea ecx, [ebp - 0x924]
jle 0x1012080d
push 1
jmp 0x1012080f
push 0
push ebx
push edi
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
cmp edi, dword [esi + 0xc]
jl 0x101207e0
mov eax, dword [ebp - 0x934]
inc ebx
add eax, 0x64
mov dword [ebp - 0x934], eax
cmp ebx, dword [esi + 0x10]
jl 0x101207b0
jmp 0x10120a39
xor ecx, ecx
mov ebx, 1
mov dword [ebp - 0x92c], ecx
cmp dword [esi + 0x10], ecx
jle 0x10120a39
xor eax, eax
mov dword [ebp - 0x950], eax
nop dword [eax + eax]
cdq
idiv dword [esi + 0x10]
cmp dword [esi + 0x148], 0
mov dword [esi + 0x144], eax
jne 0x10120a39
xor edi, edi
mov dword [ebp - 0x93c], edi
cmp dword [esi + 0xc], edi
jle 0x10120a1a
push ecx
push edi
mov ecx, esi
call sym.FreeImageRender.dll_protected:_unsigned_char___thiscall_CxImage::BlindGetPixelIndex_int__int_
mov ecx, dword [ebp - 0x92c]
mov byte [ebp - 0x935], al
cmp al, 0x80
jbe 0x101208be
push 1
push ecx
push edi
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
sub eax, 0xff
jmp 0x101208d4
push 0
push ecx
push edi
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
movzx eax, byte [ebp - 0x935]
mov dword [ebp - 0x940], eax
mov ecx, esi
lea eax, [edi + 1]
mov edi, dword [ebp - 0x92c]
push edi
push eax
mov dword [ebp - 0x934], eax
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
mov ecx, dword [ebp - 0x940]
movzx eax, al
mov dword [ebp - 0x944], eax
lea eax, [ecx*8]
sub eax, ecx
mov ecx, dword [ebp - 0x944]
cdq
and edx, 0xf
add eax, edx
mov edx, 0
sar eax, 4
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x10120935
mov byte [ebp - 0x930], 0xff
jmp 0x10120945
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x930], al
push dword [ebp - 0x930]
mov ecx, esi
push edi
push dword [ebp - 0x934]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
or edi, 0xffffffff
nop dword [eax]
cmp edi, 0xffffffff
je 0x10120979
test edi, edi
je 0x10120972
cmp edi, 1
jne 0x1012097e
mov ebx, edi
jmp 0x1012097e
mov ebx, 5
jmp 0x1012097e
mov ebx, 3
mov eax, dword [ebp - 0x92c]
mov ecx, dword [ebp - 0x93c]
inc eax
add ecx, edi
push eax
push ecx
mov ecx, esi
call sym.FreeImageRender.dll_public:_unsigned_char___thiscall_CxImage::GetPixelIndex_int__int_
movzx ecx, al
mov eax, dword [ebp - 0x940]
imul eax, ebx
cdq
and edx, 0xf
add eax, edx
mov edx, 0
sar eax, 4
add ecx, eax
mov eax, ecx
cmovs eax, edx
cmp eax, 0xff
jle 0x101209c7
mov byte [ebp - 0x930], 0xff
jmp 0x101209d7
xor edx, edx
movzx eax, cl
test ecx, ecx
cmovs eax, edx
mov byte [ebp - 0x930], al
push dword [ebp - 0x930]
mov eax, dword [ebp - 0x92c]
mov ecx, esi
inc eax
push eax
mov eax, dword [ebp - 0x93c]
add eax, edi
push eax
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPixelIndex_int__int__unsigned_char_
inc edi
cmp edi, 2
jl 0x10120960
mov edi, dword [ebp - 0x934]
mov ecx, dword [ebp - 0x92c]
mov dword [ebp - 0x93c], edi
cmp edi, dword [esi + 0xc]
jl 0x10120888
mov eax, dword [ebp - 0x950]
inc ecx
add eax, 0x64
mov dword [ebp - 0x92c], ecx
mov dword [ebp - 0x950], eax
cmp ecx, dword [esi + 0x10]
jl 0x10120860
push 0
push 0
push 0
push 0
push 0
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPaletteColor_unsigned_char__unsigned_char__unsigned_char__unsigned_char__unsigned_char_
push 0
push 0xff
push 0xff
push 0xff
push 1
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_void___thiscall_CxImage::SetPaletteColor_unsigned_char__unsigned_char__unsigned_char__unsigned_char__unsigned_char_
push 1
lea eax, [ebp - 0x924]
mov ecx, esi
push eax
call sym.FreeImageRender.dll_public:_bool___thiscall_CxImage::Transfer_class_CxImage___bool_
mov bl, 1
lea ecx, [ebp - 0x924]
mov dword [ebp - 4], 2
mov dword [ebp - method.CxImage.virtual_0], vtable.CxImage.0
call sym.FreeImageRender.dll_public:_bool___thiscall_CxImage::DestroyFrames_void_
lea ecx, [ebp - 0x924]
call sym.FreeImageRender.dll_public:_bool___thiscall_CxImage::Destroy_void_
mov al, bl
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1012b4a2
mov esp, ebp
pop ebp
ret 4