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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x100663b8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xb0
mov byte [esp + 0x18], dl
mov dword [esp + 0x10], ecx
push ebx
push esi
push edi
test dl, dl
je 0x10044a7a
mov dword [esp + 0x18], 0x6f46
cmp dword [esp + 0x18], 0x72e4
push 0
pop ebx
jle 0x1004492f
mov edi, ebx
mov esi, ebx
mov ecx, ebx
mov dword [esp + 0x10], 0x1b67
mov dword [esp + 0x14], ecx
mov eax, edi
shl eax, cl
lea ecx, [esp + 0x88]
cdq
push edx
push eax
call fcn.10001b14
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100448f7
mov eax, dword [eax]
push eax
call fcn.1004c11f
pop ecx
push ebx
push 1
lea ecx, [esp + 0x90]
call fcn.10003c82
mov ecx, dword [esp + 0x14]
add ecx, esi
dec dword [esp + 0x10]
mov dword [esp + 0x14], ecx
jne 0x100448da
inc esi
cmp esi, 0x7674
jl 0x100448cc
inc edi
cmp edi, 0x79b1
jl 0x100448ca
sub esp, 0x18
mov ecx, esp
push dword [ebp + 0x10]
call fcn.10003893
lea ecx, [esp + 0x50]
call fcn.1004352d
add esp, 0x18
mov dword [esp + 0xc4], 2
mov dword [esp + 0x18], 0x34cd
cmp dword [esp + 0x18], 0x36b6
jle 0x100449f1
push 0x13c3
push ebx
push ebx
push ebx
call dword [sym.imp.GDI32.dll_CombineRgn]
mov esi, ebx
mov dword [esp + 0x10], ebx
mov edi, ebx
mov dword [esp + 0x14], ebx
mov ecx, edi
mov dword [esp + 0x28], esi
mov edi, esi
mov dword [esp + 0x20], ebx
shl edi, cl
mov esi, ebx
mov eax, edi
lea ecx, [esp + 0xa0]
xor eax, esi
cdq
push edx
push eax
call fcn.10001b14
pop ecx
pop ecx
cmp dword [eax + 0x14], 0x10
jb 0x100449b0
mov eax, dword [eax]
push eax
call fcn.1004c11f
pop ecx
push ebx
push 1
lea ecx, [esp + 0xa8]
call fcn.10003c82
inc esi
cmp esi, 0x2cae
jl 0x10044993
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
cmp edi, 0xd38
jl 0x10044983
inc esi
mov dword [esp + 0x10], esi
cmp esi, 0x42e6
jl 0x1004497d
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0x38], eax
je 0x10044a5e
push dword [esp + 0x1c]
xor ecx, ecx
mov dword [esp + 0x78], 7
push eax
push dword [esp + 0x40]
mov word [esp + 0x6c], cx
lea ecx, [esp + 0x6c]
mov dword [esp + 0x7c], ebx
call fcn.100268fe
mov byte [esp + 0xc4], 3
lea edx, [esp + 0x60]
mov ecx, dword [esp + 0x1c]
call fcn.100441ad
lea ecx, [esp + 0x60]
push ebx
push 1
test eax, eax
jns 0x10044a59
mov eax, dword [ebp + 0x18]
mov byte [eax], 1
call fcn.1000418d
lea ecx, [esp + 0x38]
call fcn.1000a255
jmp 0x10044bd6
call fcn.1000418d
cmp dword [esp + 0x18], 0x318f
jge 0x10044a73
push str.ukkgw_ujjadj_fxj_owvqfrfi
call fcn.1004c11f
pop ecx
mov eax, dword [ebp + 0x18]
mov byte [eax], bl
jmp 0x10044a4b
push dword [esp + 0x1c]
movdqa xmm0, xmmword [0x10074340]
lea eax, [esp + 0x8c]
push eax
xor ebx, ebx
lea eax, [esp + 0x80]
push eax
push ebx
lea ecx, [esp + 0x3c]
mov dword [esp + 0x3c], ebx
movdqu xmmword [esp + 0x88], xmm0
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], ebx
call fcn.10006116
mov dword [esp + 0xc4], 8
lea ecx, [esp + 0x44]
mov dword [esp + 0x10], 2
mov eax, 0xaf12a83a
mov dword [esp + 0x14], 0xffffffff
mov dword [esp + 0x1c], 0xffff
mov dword [esp + 0x18], 0xeca6c849
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], eax
mov dword [esp + 0x20], 0xc86992f1
push 1
call fcn.100038f5
push ecx
lea eax, [esp + 0x2c]
mov byte [esp + 0xc8], 9
push eax
push ecx
push ebx
push ecx
push ecx
lea edx, [esp + 0x5c]
call fcn.100436ae
mov edx, dword [esp + 0x44]
mov eax, 0x7013dce9
add esp, 0x18
mov dword [edx + 8], eax
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], ebx
je 0x10044b94
mov edx, dword [edx + 8]
xor ecx, ecx
mov eax, dword [esp + 0x14]
cmp eax, edx
setge cl
cmp ecx, 3
sbb eax, eax
neg eax
cmp eax, edx
jg 0x10044b62
cmp dword [esp + 0x1c], ebx
je 0x10044b62
xor esi, esi
inc esi
jmp 0x10044b64
mov esi, ebx
mov ecx, dword [esp + 0x14]
xor edx, edx
mov eax, dword [esp + 0x10]
cmp eax, ecx
setge dl
xor ecx, ecx
mov dword [esp + 0x10], edx
mov eax, dword [esp + 0x14]
cmp esi, eax
setle cl
add ecx, dword [esp + 0x10]
jne 0x10044b91
mov eax, dword [esp + 0x2c]
cmp dword [eax + 4], ebx
je 0x10044b94
xor ebx, ebx
inc ebx
push ecx
push ecx
push 0x3054
mov dword [esp + 0x24], ebx
lea edx, [esp + 0x50]
mov eax, dword [esp + 0x24]
push 0x3b31
push ecx
mov dword [esp + 0x6c], eax
mov ecx, 0x1865
push 1
mov dword [esp + 0x38], eax
call fcn.10040c3f
add esp, 0x18
lea ecx, [esp + 0x44]
call fcn.10003978
lea ecx, [esp + 0x2c]
call fcn.10003978
mov ecx, dword [esp + 0xbc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret