Function at 0x43a550
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x481970
mov eax, dword fs:[0]
push eax
sub esp, 0x2c
push ebx
push esi
push edi
mov eax, dword [0x49c498]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0x18], ebx
cmp dword [ebp + 8], 0
je 0x43ab06
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x34], 0x48bc94
push eax
push dword [ebx + 0x28]
mov dword [ebp - 0x1c], 0
call dword [sym.imp.gdiplus.dll_GdipCreateSolidFill]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 0
push eax
push 0
mov dword [ebp - 0x28], 0
call dword [sym.imp.gdiplus.dll_GdipCreatePath]
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 1
mov eax, dword [ebx + 0x2c]
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, 1
jne 0x43a632
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43a61c
push str.sites.dll
call edi
test eax, eax
jne 0x43a604
call fcn.0040d070
test eax, eax
jne 0x43a604
mov eax, 0x24
jmp 0x43a620
push str.scale
push eax
call esi
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a61c
mov eax, 0x24
jmp 0x43a620
push 0x24
call eax
push 0
push eax
push 0
push 0
push dword [ebp - 0x28]
call dword [sym.imp.gdiplus.dll_GdipAddPathLineI]
jmp 0x43a676
cmp eax, 2
jne 0x43a67d
lea ecx, [eax + 0x22]
call fcn.0043af30
mov ecx, 0x24
mov esi, eax
call fcn.0043af30
fld dword [0x48e4b0]
sub esp, 8
fstp dword [esp + 4]
fld dword [0x48e4b4]
fstp dword [esp]
push eax
push esi
push 0
push 0
push dword [ebp - 0x28]
call dword [sym.imp.gdiplus.dll_GdipAddPathArcI]
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x43a67d
mov dword [ebp - 0x24], eax
mov eax, dword [ebp + 0xc]
mov ebx, dword [eax + 8]
sub ebx, dword [eax]
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43a6bd
push str.sites.dll
call edi
test eax, eax
jne 0x43a6a7
call fcn.0040d070
test eax, eax
jne 0x43a6a7
lea esi, [eax + 0x24]
jmp 0x43a6c3
push str.scale
push eax
call esi
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a6bd
lea esi, [eax + 0x24]
jmp 0x43a6cc
push 0x24
call eax
mov esi, eax
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43a704
push str.sites.dll
call edi
test eax, eax
jne 0x43a6e7
call fcn.0040d070
test eax, eax
jne 0x43a6e7
mov eax, 0x24
jmp 0x43a708
push str.scale
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a704
mov eax, 0x24
jmp 0x43a708
push 0x24
call eax
push 0
sub ebx, esi
push ebx
mov ebx, dword [sym.imp.gdiplus.dll_GdipAddPathLineI]
push 0
push eax
push dword [ebp - 0x28]
call ebx
test eax, eax
je 0x43a722
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x2c]
cmp eax, 1
jne 0x43a842
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43a777
push str.sites.dll
call edi
test eax, eax
jne 0x43a753
call fcn.0040d070
test eax, eax
jne 0x43a753
lea ebx, [eax + 0x24]
jmp 0x43a77d
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.scale
push eax
call esi
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a76f
lea ebx, [eax + 0x24]
jmp 0x43a78c
push 0x24
call eax
mov ebx, eax
jmp 0x43a783
push 0x24
call eax
mov ebx, eax
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43a7bb
push str.sites.dll
call edi
test eax, eax
jne 0x43a7a5
call fcn.0040d070
test eax, eax
jne 0x43a7a5
lea edi, [eax + 0x24]
jmp 0x43a7c1
push str.scale
push eax
call esi
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a7bb
lea edi, [eax + 0x24]
jmp 0x43a7c6
push 0x24
call eax
mov edi, eax
mov eax, dword [0x4a01c4]
mov ecx, dword [ebp + 0xc]
mov esi, dword [ecx + 8]
sub esi, dword [ecx]
test eax, eax
jne 0x43a80f
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.sites.dll
call eax
test eax, eax
jne 0x43a7f2
call fcn.0040d070
test eax, eax
jne 0x43a7f2
mov eax, 0x24
jmp 0x43a813
push str.scale
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a80f
mov eax, 0x24
jmp 0x43a813
push 0x24
call eax
fld dword [0x48e4b0]
sub esp, 8
sub esi, eax
dec esi
fstp dword [esp + 4]
fld dword [0x48e4b8]
fstp dword [esp]
push ebx
push edi
push 0
push esi
push dword [ebp - 0x28]
call dword [sym.imp.gdiplus.dll_GdipAddPathArcI]
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
jmp 0x43a869
cmp eax, 2
jne 0x43a870
mov eax, dword [ebp + 0xc]
mov ecx, 0x24
mov esi, dword [eax + 8]
sub esi, dword [eax]
call fcn.0043af30
push 0
push esi
mov ecx, esi
sub ecx, eax
push 0
dec ecx
push ecx
push dword [ebp - 0x28]
call ebx
test eax, eax
je 0x43a870
mov dword [ebp - 0x24], eax
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43a8bf
push str.sites.dll
call edi
test eax, eax
jne 0x43a896
call fcn.0040d070
test eax, eax
jne 0x43a896
mov dword [ebp - 0x10], 0x24
jmp 0x43a8c6
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.scale
push eax
call ebx
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a8b6
mov dword [ebp - 0x10], 0x24
jmp 0x43a8d5
push 0x24
call eax
mov dword [ebp - 0x10], eax
jmp 0x43a8cc
push 0x24
call eax
mov dword [ebp - 0x10], eax
mov ebx, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43a90c
push str.sites.dll
call edi
test eax, eax
jne 0x43a8f2
call fcn.0040d070
test eax, eax
jne 0x43a8f2
mov dword [ebp - 0x14], 0x24
jmp 0x43a913
push str.scale
push eax
call ebx
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a90c
mov dword [ebp - 0x14], 0x24
jmp 0x43a918
push 0x24
call eax
mov dword [ebp - 0x14], eax
mov eax, dword [0x4a01c4]
mov esi, dword [ebp + 0xc]
mov ecx, dword [esi + 0xc]
sub ecx, dword [esi + 4]
mov dword [ebp - 0x20], ecx
test eax, eax
jne 0x43a95f
push str.sites.dll
call edi
test eax, eax
jne 0x43a945
call fcn.0040d070
test eax, eax
jne 0x43a945
mov dword [ebp - 0x18], 0x24
jmp 0x43a966
push str.scale
push eax
call ebx
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a95f
mov dword [ebp - 0x18], 0x24
jmp 0x43a96b
push 0x24
call eax
mov dword [ebp - 0x18], eax
mov eax, dword [0x4a01c4]
mov ecx, dword [ebp + 0xc]
mov esi, dword [esi + 8]
sub esi, dword [ecx]
test eax, eax
jne 0x43a9aa
push str.sites.dll
call edi
test eax, eax
jne 0x43a992
call fcn.0040d070
test eax, eax
jne 0x43a992
mov eax, 0x24
jmp 0x43a9ae
push str.scale
push eax
call ebx
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43a9aa
mov eax, 0x24
jmp 0x43a9ae
push 0x24
call eax
fld dword [0x48e4b0]
sub esp, 8
mov ecx, dword [ebp - 0x20]
sub esi, eax
sub ecx, dword [ebp - 0x18]
dec esi
dec ecx
fstp dword [esp + 4]
fldz
fstp dword [esp]
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push ecx
push esi
push dword [ebp - 0x28]
call dword [sym.imp.gdiplus.dll_GdipAddPathArcI]
test eax, eax
je 0x43a9e2
mov dword [ebp - 0x24], eax
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43aa1a
push str.sites.dll
call edi
test eax, eax
jne 0x43aa04
call fcn.0040d070
test eax, eax
jne 0x43aa04
lea ebx, [eax + 0x24]
jmp 0x43aa20
push str.scale
push eax
call ebx
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43aa1a
lea ebx, [eax + 0x24]
jmp 0x43aa29
push 0x24
call eax
mov ebx, eax
mov eax, dword [0x4a01c4]
test eax, eax
jne 0x43aa5d
push str.sites.dll
call edi
test eax, eax
jne 0x43aa42
call fcn.0040d070
test eax, eax
jne 0x43aa42
lea edi, [eax + 0x24]
jmp 0x43aa63
push str.scale
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetProcAddress]
call eax
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43aa5d
lea edi, [eax + 0x24]
jmp 0x43aa68
push 0x24
call eax
mov edi, eax
mov eax, dword [0x4a01c4]
mov ecx, dword [ebp + 0xc]
mov esi, dword [ecx + 0xc]
sub esi, dword [ecx + 4]
test eax, eax
jne 0x43aab1
mov eax, dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push str.sites.dll
call eax
test eax, eax
jne 0x43aa95
call fcn.0040d070
test eax, eax
jne 0x43aa95
mov eax, 0x24
jmp 0x43aab5
push str.scale
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4a01c4], eax
test eax, eax
jne 0x43aab1
mov eax, 0x24
jmp 0x43aab5
push 0x24
call eax
fld dword [0x48e4b0]
sub esp, 8
sub esi, eax
dec esi
fst dword [esp + 4]
fstp dword [esp]
push ebx
push edi
push esi
push 0
push dword [ebp - 0x28]
call dword [sym.imp.gdiplus.dll_GdipAddPathArcI]
test eax, eax
je 0x43aadd
mov dword [ebp - 0x24], eax
push dword [ebp - 0x28]
mov ebx, dword [ebp + 8]
mov esi, dword [ebp - 0x1c]
push esi
push dword [ebx]
call dword [sym.imp.gdiplus.dll_GdipFillPath]
test eax, eax
je 0x43aaf6
mov dword [ebx + 4], eax
push dword [ebp - 0x28]
call dword [sym.imp.gdiplus.dll_GdipDeletePath]
push esi
call dword [sym.imp.gdiplus.dll_GdipDeleteBrush]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8