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

Disassembly:
sub esp, 0x70
lea eax, [esp + 0x1c]
lea ecx, [esp + 0x18]
push ebx
push ebp
push esi
push edi
push eax
push ecx
call fcn.100d3780
mov esi, dword [esp + 0x84]
push esi
call sym.GEAR32PO.OCX_GPb_bits_per_pixel_get
mov ecx, dword [esp + 0x94]
test ecx, ecx
jne 0x100c4f97
cmp eax, 1
je 0x100c4f88
cmp eax, 4
jne 0x100c4f97
push 0
push eax
push 0xfffff31c
push 0x40
jmp 0x100c5284
mov ebx, dword [esp + 0x8c]
mov eax, ebx
cdq
sub eax, edx
mov edi, eax
mov eax, dword [esp + 0x90]
cdq
sub eax, edx
sar edi, 1
mov ebp, eax
mov eax, edi
neg eax
sar ebp, 1
lea edx, [eax + ebx - 1]
mov ebx, dword [esp + 0x88]
mov ecx, ebp
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 0x84], edx
neg ecx
lea edx, [esp + 0x60]
mov dword [esp + 0x1c], ecx
push edx
lea ecx, [ecx + eax - 1]
push ebx
push esi
mov dword [esp + 0x2c], ecx
call sym.GEAR32PO.OCX_GPb_IP_check_rect_for_NULL_and_clip
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x68]
mov ecx, dword [esp + 0x64]
add eax, edi
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x8c]
add edx, edi
add ecx, ebp
sub edx, eax
mov eax, dword [esp + 0x6c]
inc edx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x90]
sub eax, edx
lea edx, [esp + 0x70]
push edx
push ebx
lea ecx, [eax + ebp + 1]
mov dword [esp + 0x84], ecx
call fcn.100c4d70
push ebx
call sym.GEAR32PO.OCX_rect_number_of_segments
mov ebp, eax
lea eax, [esp + 0x38]
push 0
push eax
push ebx
mov dword [esp + 0x30], ebp
call sym.GEAR32PO.OCX_rect_segment_get
xor ebx, ebx
mov ecx, dword [esp + 0x38]
test bp, bp
mov dword [esp + 0x14], ecx
jbe 0x100c528e
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x40]
lea eax, [edi + edx]
cmp edi, eax
jge 0x100c51ec
mov ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x84]
sub ebp, eax
jmp 0x100c508f
mov ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x84]
lea eax, [edx + edi]
mov dword [esp + 0x58], eax
lea edx, [ebp + eax]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x50], edx
mov edx, dword [esp + 0x1c]
add edx, ecx
mov ecx, dword [esp + 0x38]
add eax, ecx
mov dword [esp + 0x54], edx
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x94]
cmp eax, 3
ja case.default.0x100c50c9
jmp dword [eax*4 + 0x100c52a0]
lea edx, [esp + 0x10]
lea eax, [esp + 0x50]
push edx
push eax
push esi
call fcn.10002690
jmp 0x100c5127
lea ecx, [esp + 0x10]
lea edx, [esp + 0x50]
push ecx
push edx
push esi
call fcn.100026d0
jmp 0x100c5127
lea eax, [esp + 0x10]
lea ecx, [esp + 0x50]
push eax
push ecx
push esi
call fcn.10002900
jmp 0x100c5127
lea edx, [esp + 0x10]
lea eax, [esp + 0x50]
push edx
push eax
push esi
call fcn.10002b70
jmp 0x100c5127
mov byte [esp + 0x10], 0
mov byte [esp + 0x11], 0
mov byte [esp + 0x12], 0
mov eax, dword [esp + 0x98]
sub eax, 0
je 0x100c51a9
dec eax
jne 0x100c51cd
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x38]
and edx, 0xffff
test eax, eax
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
je 0x100c5183
mov cx, word [eax]
push 1
mov word [esp + 0x38], cx
lea ecx, [esp + 0x54]
mov dl, byte [eax + 2]
lea eax, [esp + 0x34]
push eax
push ecx
push esi
mov byte [esp + 0x46], dl
call fcn.10044060
mov dx, word [esp + 0x10]
mov al, byte [esp + 0x12]
mov word [esp + 0x34], dx
lea ecx, [esp + 0x30]
push 1
lea edx, [esp + 0x48]
push ecx
push edx
push esi
mov byte [esp + 0x46], al
call fcn.10044150
jmp 0x100c51cd
mov ax, word [esp + 0x10]
mov cl, byte [esp + 0x12]
mov word [esp + 0x34], ax
lea edx, [esp + 0x30]
push 1
lea eax, [esp + 0x54]
push edx
push eax
push esi
mov byte [esp + 0x46], cl
call fcn.10044060
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0x40]
add edi, ecx
mov ecx, dword [esp + 0x3c]
add ecx, edx
cmp edi, ecx
jl 0x100c508b
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
test eax, eax
je 0x100c5211
mov ecx, ebp
mov edx, ebx
and ecx, 0xffff
and edx, 0xffff
push ecx
mov ecx, dword [esp + 0x30]
push edx
push ecx
call eax
test eax, eax
je 0x100c526c
inc ebx
cmp bx, bp
jae 0x100c5232
mov ecx, dword [esp + 0x88]
mov edx, ebx
and edx, 0xffff
lea eax, [esp + 0x38]
push edx
push eax
push ecx
call sym.GEAR32PO.OCX_rect_segment_get
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x14]
cmp ecx, eax
je 0x100c5250
mov edx, dword [esp + 0x90]
add eax, edx
cmp ecx, eax
je 0x100c5250
cmp bx, bp
jb 0x100c51ec
cmp bx, bp
mov dword [esp + 0x14], ecx
jb 0x100c5069
call fcn.10046b40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret 0x20
and ebp, 0xffff
and ebx, 0xffff
push ebp
push ebx
push 0xfffff7bf
push 0x9c
push str.C:_accusoftgear_sourceIMG_PROCRESAMPLE.C
call fcn.10046940
call fcn.10046b40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x70
ret 0x20