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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xa8
mov eax, esp
mov dword [eax], 0xee71b7
mov eax, dword [sym.imp.GDI32.dll_EndPath]
call eax
sub esp, 4
mov ecx, esp
mov dword [ecx + 8], 0x126
mov dword [ecx + 4], 0xc154dc
mov dword [ecx], 0x2e400e
mov ecx, dword [sym.imp.KERNEL32.dll_LocalReAlloc]
mov dword [esp + 0x88], eax
call ecx
sub esp, 0xc
mov ecx, esp
mov dword [ecx], 0x1210d6
mov ecx, dword [sym.imp.USER32.dll_CopyIcon]
mov dword [esp + 0x84], eax
call ecx
sub esp, 4
mov ecx, esp
mov dword [ecx + 0xc], 0xe45137
mov dword [ecx + 8], 0x1b
mov dword [ecx + 4], 8
mov dword [ecx], 0
mov ecx, dword [sym.imp.USER32.dll_keybd_event]
mov dword [esp + 0x80], eax
call ecx
sub esp, 0x10
mov eax, esp
mov dword [eax], 0xed4641
mov eax, dword [sym.imp.KERNEL32.dll_FlushFileBuffers]
call eax
sub esp, 4
mov ecx, esp
mov dword [ecx], 0xa32d3b
mov ecx, dword [sym.imp.GDI32.dll_CreatePatternBrush]
mov dword [esp + 0x7c], eax
call ecx
sub esp, 4
xor ecx, ecx
mov dword [esp + 0x78], eax
mov dword [esp + 0x74], ecx
jmp 0x100014fc
mov eax, dword [esp + 0x70]
add eax, 1
cmp eax, 0x2f1
mov dword [esp + 0x6c], eax
je 0x100014b6
jmp 0x10001521
jmp 0x10001598
mov eax, dword [esp + 0x68]
mov byte [esp + 0x8f], 8
add eax, 1
mov word [esp + 0x8c], 0x28
mov ecx, esp
lea edx, [esp + 0x8c]
mov dword [ecx + 0xc], edx
lea edx, [esp + 0x8f]
mov dword [ecx + 8], edx
mov dword [ecx + 0x14], 0xc75d7a
mov dword [ecx + 0x10], 0xb54
mov dword [ecx + 4], 0xb54
mov dword [ecx], 0xb54
mov ecx, dword [sym.imp.USER32.dll_ToAsciiEx]
mov dword [esp + 0x64], eax
call ecx
sub esp, 0x18
mov ecx, esp
mov dword [ecx], 0x3f
mov ecx, dword [sym.imp.KERNEL32.dll_GlobalDeleteAtom]
mov dword [esp + 0x60], eax
call ecx
sub esp, 4
mov ecx, esp
mov dword [ecx + 4], 0x708927
mov dword [ecx], 0x9b4
mov ecx, dword [sym.imp.KERNEL32.dll_SetStdHandle]
mov word [esp + 0x5e], ax
call ecx
sub esp, 8
mov ecx, dword [esp + 0x64]
cmp ecx, 0xa
mov dword [esp + 0x58], eax
mov dword [esp + 0x68], ecx
je 0x10001384
jmp 0x10001389
mov eax, esp
mov dword [eax], 0xada00a
mov eax, dword [sym.imp.GDI32.dll_CloseMetaFile]
call eax
sub esp, 4
mov ecx, esp
mov dword [ecx + 0x2c], 0xa43
mov dword [ecx + 0x28], 0x6b2
mov dword [ecx + 0x24], 0x216
mov dword [ecx + 0x20], 0x1bd9e9
mov dword [ecx + 0x1c], 0x1f9
mov dword [ecx + 0x18], 0x1f9
mov dword [ecx + 0x14], 0xbbf859
mov dword [ecx + 0x10], 0x1f9
mov dword [ecx + 0xc], 0x216
mov dword [ecx + 8], 0x216
mov dword [ecx + 4], 0x216
mov dword [ecx], 0xbbf859
mov ecx, dword [sym.imp.GDI32.dll_MaskBlt]
mov dword [esp + 0x54], eax
call ecx
sub esp, 0x30
mov dword [esp + 0x50], eax
jmp 0x10001598
mov eax, esp
mov dword [eax + 8], 0xf6d
mov dword [eax + 4], 0x835449
mov dword [eax], 0xfa1311
mov eax, dword [sym.imp.GDI32.dll_ExtSelectClipRgn]
call eax
sub esp, 0xc
mov ecx, dword [esp + 0x4c]
sub ecx, 8
mov dword [esp + 0x48], eax
mov dword [esp + 0x44], ecx
je 0x10001437
jmp 0x100014ed
mov eax, dword [esp + 0x4c]
sub eax, 0x28
mov dword [esp + 0x40], eax
je 0x10001573
jmp 0x10001568
mov eax, dword [esp + 0x74]
mov ecx, esp
mov dword [ecx], 0xac2ee
mov ecx, dword [sym.imp.USER32.dll_CloseDesktop]
mov dword [esp + 0x4c], eax
call ecx
sub esp, 4
xor ecx, ecx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esp + 0x6c]
mov ecx, 0x4ec4ec4f
mov dword [esp + 0x70], eax
mul ecx
shr edx, 2
imul eax, edx, 0xd
mov ecx, dword [esp + 0x70]
sub ecx, eax
or ecx, 2
sub ecx, 7
mov dword [esp + 0x38], ecx
je 0x1000154d
jmp 0x10001367
mov eax, esp
mov dword [eax], 0x1a3
mov eax, dword [sym.imp.USER32.dll_SetProcessDefaultLayout]
call eax
sub esp, 4
mov dword [esp + 0x34], eax
jmp 0x10001367
xor eax, eax
mov dword [esp + 0x68], eax
jmp 0x10001389
mov eax, esp
lea ecx, [esp + 0x90]
mov dword [eax + 4], ecx
mov dword [eax], 0xfe5be4
mov eax, dword [sym.imp.GDI32.dll_GetWorldTransform]
call eax
sub esp, 8
mov dword [esp + 0x30], eax
jmp 0x10001437
mov eax, dword [esp + 0x4c]
add eax, 1
cmp eax, 0x17
mov dword [esp + 0x74], eax
jne 0x100014fc
mov esp, ebp
pop ebp
ret