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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xac
push ebx
push esi
push edi
mov edi, ecx
mov eax, dword [edi + 4]
test eax, eax
je 0x45a948
mov ebx, dword [ebp + 8]
test ebx, ebx
je 0x45a948
mov ecx, dword [ebp + 0x14]
test ecx, ecx
je 0x45a948
mov eax, dword [ebp + 0x18]
test eax, eax
je 0x45a948
mov dl, byte [edi + 0x17e]
test dl, dl
je 0x45a948
test ecx, ecx
jge 0x459ef5
mov ecx, dword [edi + 0xc]
mov dword [ebp + 0x14], ecx
test eax, eax
jge 0x459eff
mov eax, dword [edi + 0x10]
mov dword [ebp + 0x18], eax
mov edx, dword [edi + 0x14c]
mov esi, dword [edi + 0x1a0]
cmp edx, 0xffffffff
setne byte [esp + 0x12]
test esi, esi
mov esi, dword [ebp + 0x1c]
setne byte [esp + 0x13]
test esi, esi
je 0x459f50
lea eax, [esp + 0xa8]
push eax
push ebx
call dword [sym.imp.GDI32.dll_GetClipBox]
push esi
call dword [sym.imp.GDI32.dll_CreateRectRgnIndirect]
push 1
mov esi, eax
push esi
push ebx
call dword [sym.imp.GDI32.dll_ExtSelectClipRgn]
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
mov dl, byte [esp + 0x12]
test dl, dl
jne 0x45a2bd
mov dl, byte [esp + 0x13]
test dl, dl
jne 0x45a2bd
mov dl, byte [edi + 0x17d]
test dl, dl
jne 0x45a2bd
cmp ecx, dword [edi + 0xc]
jne 0x459fb6
cmp eax, dword [edi + 0x10]
jne 0x459fb6
push 3
push ebx
call dword [sym.imp.GDI32.dll_SetStretchBltMode]
mov ecx, dword [edi + 4]
mov edx, dword [edi + 0x34]
mov eax, dword [ebp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 0x10]
push edx
mov edx, dword [ebp + 0xc]
push eax
push 0
push 0
push 0
push eax
mov eax, dword [ebp + 0x14]
push eax
push ecx
push edx
push ebx
call dword [sym.imp.GDI32.dll_SetDIBitsToDevice]
jmp 0x45a90f
lea eax, [esp + 0x8c]
push eax
push ebx
call dword [sym.imp.GDI32.dll_GetClipBox]
mov esi, dword [esp + 0x8c]
mov ecx, dword [ebp + 0xc]
cmp esi, ecx
mov edx, esi
jg 0x459fd7
mov edx, ecx
mov eax, dword [esp + 0x94]
cmp eax, edx
jge 0x459fe8
mov dword [esp + 0x44], eax
jmp 0x459ff4
cmp esi, ecx
mov dword [esp + 0x44], esi
jg 0x459ff4
mov dword [esp + 0x44], ecx
mov edx, dword [ebp + 0x14]
add ecx, edx
cmp eax, ecx
mov edx, eax
jl 0x45a001
mov edx, ecx
cmp esi, edx
jle 0x45a009
mov eax, esi
jmp 0x45a00f
cmp eax, ecx
jl 0x45a00f
mov eax, ecx
mov edx, dword [esp + 0x90]
mov ecx, dword [ebp + 0x10]
cmp edx, ecx
mov ebx, edx
jg 0x45a021
mov ebx, ecx
mov esi, dword [esp + 0x98]
cmp esi, ebx
jge 0x45a030
mov edx, esi
jmp 0x45a036
cmp edx, ecx
jg 0x45a036
mov edx, ecx
mov ebx, dword [ebp + 0x18]
add ecx, ebx
cmp esi, ecx
mov dword [esp + 0x48], edx
mov ebx, esi
jl 0x45a047
mov ebx, ecx
cmp dword [esp + 0x90], ebx
jle 0x45a059
mov esi, dword [esp + 0x90]
jmp 0x45a05f
cmp esi, ecx
jl 0x45a05f
mov esi, ecx
sub eax, dword [esp + 0x44]
mov ecx, eax
mov eax, esi
sub eax, edx
xor edx, edx
mov dword [esp + 0x5c], edx
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x78], edx
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 8]
mov dword [esp + 0x7c], edx
push eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x84], edx
mov dword [esp + 0x60], 0x28
mov dword [esp + 0x64], ecx
mov word [esp + 0x6c], 1
mov word [esp + 0x6e], 0x18
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push 0
push 0
lea ecx, [esp + 0x14]
push ecx
push 0
mov ebx, eax
mov eax, dword [ebp + 8]
lea edx, [esp + 0x6c]
push edx
push eax
mov dword [esp + 0x6c], ebx
call dword [sym.imp.GDI32.dll_CreateDIBSection]
push eax
push ebx
call dword [sym.imp.GDI32.dll_SelectObject]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc]
test eax, eax
je 0x45a27e
fild dword [edi + 0xc]
mov eax, dword [esp + 0x28]
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x1f]
fidiv dword [ebp + 0x14]
cdq
and edx, 0x1f
add eax, edx
sar eax, 5
shl eax, 2
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x20]
test eax, eax
fstp dword [esp + 0x34]
fild dword [edi + 0x10]
fidiv dword [ebp + 0x18]
fstp dword [esp + 0x58]
jle 0x45a27e
mov eax, dword [ebp + 0x10]
mov ecx, dword [esp + 0x20]
sub esi, eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x14], esi
mov dword [esp + 0x38], ecx
jmp 0x45a160
fild dword [esp + 0x14]
fmul dword [esp + 0x58]
fstp dword [esp + 0x3c]
mov esi, dword [esp + 0x3c]
push esi
call fcn.00459d10
add esp, 4
call fcn.0049212c
mov edx, dword [edi + 0x10]
sub edx, eax
jns 0x45a18f
mov dword [esp + 0x18], 0
jmp 0x45a1a6
push esi
call fcn.00459d10
add esp, 4
call fcn.0049212c
mov ecx, dword [edi + 0x10]
sub ecx, eax
mov dword [esp + 0x18], ecx
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0xc]
lea esi, [eax + ecx]
mov eax, dword [esp + 0x28]
xor ebx, ebx
test eax, eax
jle 0x45a258
mov eax, dword [esp + 0x44]
sub eax, dword [ebp + 0xc]
mov dword [esp + 0x3c], eax
lea ebx, [ebx]
mov edx, dword [esp + 0x3c]
add edx, ebx
mov dword [esp + 0x24], edx
fild dword [esp + 0x24]
push ecx
fmul dword [esp + 0x38]
fstp dword [esp]
call fcn.00445460
add esp, 4
call fcn.0049212c
mov ecx, dword [edi + 0x28]
test ecx, ecx
je 0x45a227
mov ecx, dword [esp + 0x18]
push ecx
push eax
mov ecx, edi
call fcn.0045bac0
lea edx, [esp + 0x9c]
mov ecx, edi
push eax
push edx
call fcn.0045ba50
mov eax, dword [eax]
mov dword [esp + 0x2c], eax
mov cl, byte [esp + 0x2e]
mov dl, byte [esp + 0x2d]
jmp 0x45a242
mov ecx, dword [edi + 0x30]
imul ecx, dword [esp + 0x18]
lea edx, [eax + eax*2]
mov eax, dword [edi + 0x34]
add ecx, edx
add ecx, eax
mov al, byte [ecx]
mov dl, byte [ecx + 1]
inc ecx
mov cl, byte [ecx + 1]
mov byte [esi], al
mov eax, dword [esp + 0x28]
inc esi
mov byte [esi], dl
inc esi
mov byte [esi], cl
inc esi
inc ebx
cmp ebx, eax
jl 0x45a1d0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x14]
add ecx, eax
mov eax, dword [esp + 0x38]
dec edx
dec eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x38], eax
jne 0x45a160
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x20]
push 0
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [esp + 0x50]
push edx
mov edx, dword [esp + 0x50]
push eax
push 0
push 0
push 0
push eax
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [ebp + 8]
push ecx
push edx
push eax
call dword [sym.imp.GDI32.dll_SetDIBitsToDevice]
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x54]
push ecx
jmp 0x45a8fa
lea edx, [esp + 0x8c]
push edx
push ebx
call dword [sym.imp.GDI32.dll_GetClipBox]
mov esi, dword [esp + 0x8c]
mov ecx, dword [ebp + 0xc]
cmp esi, ecx
mov edx, esi
jg 0x45a2de
mov edx, ecx
mov eax, dword [esp + 0x94]
cmp eax, edx
jge 0x45a2ef
mov dword [esp + 0x44], eax
jmp 0x45a2fb
cmp esi, ecx
mov dword [esp + 0x44], esi
jg 0x45a2fb
mov dword [esp + 0x44], ecx
mov edx, dword [ebp + 0x14]
add ecx, edx
cmp eax, ecx
mov edx, eax
jl 0x45a308
mov edx, ecx
cmp esi, edx
jle 0x45a310
mov eax, esi
jmp 0x45a316
cmp eax, ecx
jl 0x45a316
mov eax, ecx
mov ebx, dword [esp + 0x90]
mov ecx, dword [ebp + 0x10]
cmp ebx, ecx
mov esi, ebx
jg 0x45a328
mov esi, ecx
mov edx, dword [esp + 0x98]
cmp edx, esi
jge 0x45a339
mov dword [esp + 0x48], edx
jmp 0x45a345
cmp ebx, ecx
mov dword [esp + 0x48], ebx
jg 0x45a345
mov dword [esp + 0x48], ecx
mov esi, dword [ebp + 0x18]
add ecx, esi
cmp edx, ecx
mov esi, edx
jl 0x45a352
mov esi, ecx
cmp ebx, esi
jg 0x45a35e
cmp edx, ecx
mov ebx, edx
jl 0x45a35e
mov ebx, ecx
mov esi, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
sub eax, esi
mov dword [esp + 0x1c], eax
mov esi, ebx
lea eax, [esp + 0x3c]
sub esi, edx
push eax
mov ecx, edi
mov dword [esp + 0x2c], esi
mov byte [esp + 0x10], 0
mov byte [esp + 0x11], 0
mov byte [esp + 0x12], 0
mov byte [esp + 0x13], 0
call fcn.00444ff0
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x1c]
xor ecx, ecx
mov dword [esp + 0x5c], ecx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x68], ecx
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], ecx
push eax
mov dword [esp + 0x84], ecx
mov dword [esp + 0x60], 0x28
mov dword [esp + 0x64], edx
mov dword [esp + 0x68], esi
mov word [esp + 0x6c], 1
mov word [esp + 0x6e], 0x18
call dword [sym.imp.GDI32.dll_CreateCompatibleDC]
push 0
push 0
lea ecx, [esp + 0x34]
push ecx
push 0
lea edx, [esp + 0x6c]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 8]
push edx
push eax
call dword [sym.imp.GDI32.dll_CreateDIBSection]
mov ecx, dword [esp + 0x38]
push eax
push ecx
call dword [sym.imp.GDI32.dll_SelectObject]
mov edx, dword [esp + 0x48]
mov ecx, dword [ebp + 8]
push 0xcc0020
push edx
mov edx, dword [esp + 0x24]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x4c]
push eax
mov eax, dword [esp + 0x44]
push ecx
push esi
push edx
push 0
push 0
push eax
call dword [sym.imp.GDI32.dll_BitBlt]
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x45a8bd
mov eax, dword [esp + 0x1c]
mov ecx, dword [ebp + 0x14]
lea eax, [eax + eax*2]
lea eax, [eax*8 + 0x1f]
cdq
and edx, 0x1f
add eax, edx
sar eax, 5
shl eax, 2
mov dword [esp + 0x58], eax
mov eax, dword [edi + 0xc]
cmp ecx, eax
mov dword [esp + 0x24], eax
jne 0x45a669
mov eax, dword [edi + 0x10]
cmp dword [ebp + 0x18], eax
jne 0x45a669
mov ecx, dword [ebp + 0x10]
sub eax, ebx
add eax, ecx
mov dword [esp + 0x18], eax
mov eax, esi
test eax, eax
jle 0x45a8bd
mov ecx, dword [ebp + 0xc]
mov eax, dword [esp + 0x44]
sub eax, ecx
mov ecx, esi
mov dword [esp + 0x54], eax
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], ecx
mov edi, edi
mov edx, dword [esp + 0x18]
mov eax, dword [edi + 0xc]
mov esi, dword [esp + 0x2c]
imul eax, edx
mov ecx, dword [esp + 0x54]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x20]
add esi, eax
mov eax, dword [edi + 0x30]
imul eax, edx
mov dword [esp + 0x14], ecx
lea ecx, [ecx + ecx*2]
add eax, ecx
add eax, dword [edi + 0x34]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1c]
test eax, eax
jle 0x45a63e
mov edx, eax
mov dword [esp + 0x34], edx
mov al, byte [esp + 0x13]
test al, al
je 0x45a521
mov ecx, dword [esp + 0x14]
mov eax, dword [edi + 0x1a0]
add eax, ecx
mov ecx, dword [esp + 0x40]
mov al, byte [eax + ecx]
jmp 0x45a523
or al, 0xff
movzx ebx, byte [edi + 0x17c]
movzx edx, al
mov eax, dword [edi + 0x28]
inc ebx
imul ebx, edx
sar ebx, 8
test eax, eax
je 0x45a581
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x14]
push eax
push ecx
mov ecx, edi
call fcn.0045bac0
lea edx, [esp + 0x88]
mov ecx, edi
push eax
push edx
call fcn.0045ba50
mov eax, dword [eax]
mov dword [esp + 0xc], eax
mov al, byte [edi + 0x17d]
test al, al
je 0x45a59f
mov ecx, dword [esp + 0xc]
shr ecx, 0x18
movzx edx, bl
inc ecx
imul ecx, edx
sar ecx, 8
mov bl, cl
jmp 0x45a59f
mov eax, dword [esp + 0x30]
mov cl, byte [eax]
mov dl, byte [eax + 1]
inc eax
inc eax
mov byte [esp + 0xc], cl
mov cl, byte [eax]
inc eax
mov byte [esp + 0xd], dl
mov byte [esp + 0xe], cl
mov dword [esp + 0x30], eax
mov edx, dword [esp + 0xc]
cmp edx, dword [esp + 0x3c]
jne 0x45a5b6
mov al, byte [esp + 0x12]
test al, al
je 0x45a5b6
add esi, 3
jmp 0x45a626
test bl, bl
jne 0x45a5bf
add esi, 3
jmp 0x45a626
cmp bl, 0xff
jne 0x45a5d8
mov al, byte [esp + 0xc]
mov cl, byte [esp + 0xd]
mov dl, byte [esp + 0xe]
mov byte [esi], al
inc esi
mov byte [esi], cl
inc esi
jmp 0x45a623
movzx edx, byte [esi]
mov al, bl
movzx ecx, bl
movzx ebx, byte [esp + 0xc]
not al
imul ebx, ecx
movzx eax, al
imul edx, eax
add edx, ebx
movzx ebx, byte [esp + 0xd]
sar edx, 8
imul ebx, ecx
mov byte [esi], dl
movzx edx, byte [esi + 1]
inc esi
imul edx, eax
add edx, ebx
sar edx, 8
mov byte [esi], dl
movzx edx, byte [esi + 1]
inc esi
imul edx, eax
movzx eax, byte [esp + 0xe]
imul eax, ecx
add edx, eax
sar edx, 8
mov byte [esi], dl
inc esi
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x34]
inc ecx
dec eax
mov dword [esp + 0x14], ecx
mov dword [esp + 0x34], eax
jne 0x45a504
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
add edx, ecx
mov ecx, dword [esp + 0x18]
inc ecx
dec eax
mov dword [esp + 0x20], edx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x24], eax
jne 0x45a4c0
jmp 0x45a8bd
fild dword [esp + 0x24]
mov eax, dword [esp + 0x28]
test eax, eax
fidiv dword [ebp + 0x14]
fstp dword [esp + 0x88]
fild dword [edi + 0x10]
fidiv dword [ebp + 0x18]
fstp dword [esp + 0xa0]
jle 0x45a8bd
mov eax, dword [ebp + 0x10]
mov edx, dword [esp + 0x28]
sub ebx, eax
mov dword [esp + 0x30], 0
mov dword [esp + 0x14], ebx
mov dword [esp + 0x34], edx
lea esp, [esp]
fild dword [esp + 0x14]
sub esp, 8
fmul dword [esp + 0xa8]
fst dword [esp + 0x2c]
fstp qword [esp]
call dword [sym.imp.MSVCR71.dll_ceil]
add esp, 8
call fcn.0049212c
mov ecx, dword [edi + 0x10]
sub ecx, eax
jns 0x45a6de
xor ecx, ecx
jmp 0x45a6f5
mov edx, dword [esp + 0x24]
push edx
call fcn.00459d10
add esp, 4
call fcn.0049212c
mov ecx, dword [edi + 0x10]
sub ecx, eax
mov eax, dword [edi + 0xc]
imul eax, ecx
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x2c]
lea esi, [eax + ecx]
mov eax, dword [esp + 0x1c]
test eax, eax
mov dword [esp + 0x18], 0
jle 0x45a897
mov eax, dword [esp + 0x44]
sub eax, dword [ebp + 0xc]
mov dword [esp + 0x54], eax
lea ecx, [ecx]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x54]
add edx, eax
mov dword [esp + 0x24], edx
fild dword [esp + 0x24]
sub esp, 8
fmul dword [esp + 0x90]
fstp qword [esp]
call dword [sym.imp.MSVCR71.dll_floor]
add esp, 8
call fcn.0049212c
mov cl, byte [esp + 0x13]
test cl, cl
je 0x45a776
mov ecx, dword [edi + 0x1a0]
mov edx, dword [esp + 0x40]
add ecx, eax
mov cl, byte [ecx + edx]
jmp 0x45a779
or cl, 0xff
movzx ebx, byte [edi + 0x17c]
movzx ecx, cl
inc ebx
imul ebx, ecx
mov ecx, dword [edi + 0x28]
sar ebx, 8
test ecx, ecx
je 0x45a7d1
mov edx, dword [esp + 0x20]
push edx
push eax
mov ecx, edi
call fcn.0045bac0
mov ecx, edi
push eax
lea eax, [esp + 0xa8]
push eax
call fcn.0045ba50
mov ecx, dword [eax]
mov al, byte [edi + 0x17d]
test al, al
mov dword [esp + 0xc], ecx
je 0x45a7f9
mov edx, ecx
shr edx, 0x18
movzx eax, bl
inc edx
imul edx, eax
sar edx, 8
mov bl, dl
jmp 0x45a7f9
mov ecx, dword [edi + 0x30]
imul ecx, dword [esp + 0x20]
lea edx, [eax + eax*2]
add ecx, edx
mov edx, dword [edi + 0x34]
mov al, byte [ecx + edx]
add ecx, edx
mov dl, byte [ecx + 1]
inc ecx
mov byte [esp + 0xc], al
mov al, byte [ecx + 1]
mov byte [esp + 0xd], dl
mov byte [esp + 0xe], al
mov ecx, dword [esp + 0xc]
cmp ecx, dword [esp + 0x3c]
jne 0x45a810
mov al, byte [esp + 0x12]
test al, al
je 0x45a810
add esi, 3
jmp 0x45a882
test bl, bl
jne 0x45a819
add esi, 3
jmp 0x45a882
cmp bl, 0xff
jne 0x45a834
mov dl, byte [esp + 0xc]
mov al, byte [esp + 0xd]
mov cl, byte [esp + 0xe]
mov byte [esi], dl
inc esi
mov byte [esi], al
inc esi
mov byte [esi], cl
jmp 0x45a881
movzx edx, byte [esi]
mov al, bl
movzx ecx, bl
movzx ebx, byte [esp + 0xc]
not al
imul ebx, ecx
movzx eax, al
imul edx, eax
add edx, ebx
movzx ebx, byte [esp + 0xd]
sar edx, 8
imul ebx, ecx
mov byte [esi], dl
movzx edx, byte [esi + 1]
inc esi
imul edx, eax
add edx, ebx
sar edx, 8
mov byte [esi], dl
movzx edx, byte [esi + 1]
inc esi
imul edx, eax
movzx eax, byte [esp + 0xe]
imul eax, ecx
add edx, eax
sar edx, 8
mov byte [esi], dl
inc esi
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
inc eax
cmp eax, ecx
mov dword [esp + 0x18], eax
jl 0x45a730
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x34]
dec esi
add edx, ecx
dec eax
mov dword [esp + 0x14], esi
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
jne 0x45a6b0
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
push 0
lea edx, [esp + 0x60]
push edx
mov edx, dword [esp + 0x50]
push eax
mov eax, dword [esp + 0x34]
push eax
push 0
push 0
push 0
push eax
mov eax, dword [esp + 0x64]
push ecx
mov ecx, dword [ebp + 8]
push edx
push eax
push ecx
call dword [sym.imp.GDI32.dll_SetDIBitsToDevice]
mov edx, dword [esp + 0x9c]
mov esi, dword [esp + 0x38]
push edx
push esi
call dword [sym.imp.GDI32.dll_SelectObject]
push eax
call dword [sym.imp.GDI32.dll_DeleteObject]
push esi
call dword [sym.imp.GDI32.dll_DeleteDC]
mov eax, dword [ebp + 0x1c]
test eax, eax
je 0x45a93a
lea eax, [esp + 0xa8]
push eax
call dword [sym.imp.GDI32.dll_CreateRectRgnIndirect]
mov ecx, dword [ebp + 8]
push 2
mov esi, eax
push esi
push ecx
call dword [sym.imp.GDI32.dll_ExtSelectClipRgn]
push esi
call dword [sym.imp.GDI32.dll_DeleteObject]
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x18
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret 0x18