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

Disassembly:
sub esp, 0x1f0
push ebx
push ebp
mov ebp, dword [esp + 0x1fc]
push esi
mov esi, dword [esp + 0x208]
push edi
xor edi, edi
mov dword [esp + 0x14], edi
mov eax, dword [ebp + 0x14]
xor ebx, ebx
cmp eax, dword [ebp + 0x1c]
jge 0x451494
mov ecx, dword [ebp + 0x18]
cmp ecx, dword [ebp + 0x20]
jge 0x451494
mov edx, dword [esp + 0x210]
mov eax, dword [ebp]
cmp dword [edx], edi
jne 0x450066
cmp eax, 0x69
jne 0x44ff1c
mov ecx, dword [ebp + 4]
lea eax, [esp + 0x30]
push eax
push esi
call fcn.0048ba10
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x174
call fcn.0045f460
mov ebx, eax
test ebx, ebx
je 0x45045f
mov edi, dword [esp + 0x30]
call fcn.0043e090
mov eax, esi
lea ecx, [esp + 0x34]
mov dword [ebx], vtable.ytBGNode.0
mov dword [ebx + 0x170], edi
call fcn.0044fbe0
lea ecx, [esp + 0x34]
mov eax, ebx
call fcn.00420310
mov eax, dword [ebp + 4]
mov ecx, esi
call fcn.0048c660
mov ecx, 2
cmp dword [ebx + 0x15c], eax
je 0x44fef5
or dword [ebx + 8], ecx
cmp byte [ebx + 0x122], 0
mov dword [ebx + 0x15c], eax
je 0x44ff07
or dword [ebx + 8], ecx
mov ecx, dword [esp + 0x210]
mov byte [ebx + 0x122], 0
mov dword [ecx], ebx
jmp 0x450042
cmp eax, 0x6c
je 0x451494
push 4
call fcn.0049d99f
add esp, 4
mov dword [esp + 0xa8], eax
cmp eax, edi
je 0x44ff40
mov dword [eax], 1
mov eax, dword [ebp + 4]
lea edx, [esp + 0xa8]
push edx
mov ecx, esi
mov byte [esp + 0xc0], 1
mov dword [esp + 0xc8], edi
mov dword [esp + 0xc4], edi
mov dword [esp + 0xb0], edi
mov dword [esp + 0xb4], edi
mov dword [esp + 0xb8], edi
mov dword [esp + 0xcc], edi
mov dword [esp + 0xbc], edi
call fcn.0044fc90
add esp, 4
cmp dword [esp + 0xb8], edi
je 0x450036
cmp dword [ebp], 0x65
push 0x567098
jne 0x44ffcb
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x194
call fcn.0045f460
test eax, eax
je 0x44fff0
push eax
lea edi, [esp + 0xac]
call fcn.0044e1b0
mov ebx, eax
jmp 0x44fff2
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x194
call fcn.0045f460
test eax, eax
je 0x44fff0
push eax
lea edi, [esp + 0xac]
call fcn.0044e2c0
mov ebx, eax
jmp 0x44fff2
xor ebx, ebx
mov eax, esi
lea ecx, [esp + 0x34]
call fcn.0044fbe0
mov ecx, eax
mov eax, ebx
call fcn.00420310
mov eax, dword [esp + 0x210]
mov dword [eax], ebx
mov eax, dword [ebp + 4]
mov ecx, esi
call fcn.0048c660
mov ecx, eax
mov eax, ebx
call fcn.004017b0
cmp byte [ebx + 0x122], 0
je 0x45002f
or dword [ebx + 8], 2
mov byte [ebx + 0x122], 0
lea esi, [esp + 0xa8]
call fcn.00473040
test ebx, ebx
je 0x451494
mov eax, 0x48ab70
cmp dword [ebx + 0x16c], eax
je 0x45005b
or dword [ebx + 8], 7
mov dword [ebx + 0x16c], eax
jmp 0x451435
cmp eax, 0x7c
jl 0x4500a4
mov ecx, dword [0x5670ec]
mov edx, dword [ecx + 0x50]
mov eax, dword [edx + eax*4 - 0x1f0]
mov edx, dword [eax]
push esi
mov ecx, eax
mov eax, dword [edx + 4]
push ebp
call eax
mov ebx, eax
cmp ebx, edi
je 0x451494
mov ecx, dword [esp + 0x210]
mov edi, dword [ecx]
push ebx
call fcn.004404d0
jmp 0x451435
lea ecx, [eax - 0x67]
cmp ecx, 0x13
ja case.0x4500bd.112
movzx edx, byte [ecx + 0x4514cc]
mov esi, dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
jmp dword [edx*4 + 0x4514a4]
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x18]
lea edx, [esp + 0x44]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x20c]
push edx
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp + 4]
push eax
call fcn.0048ba10
cmp dword [ebp], 0x67
push 0x567098
jne 0x450129
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x184
call fcn.0045f460
mov edi, eax
test edi, edi
je 0x45045f
mov ecx, dword [esp + 0x44]
lea esi, [ebp + 0x24]
push ecx
call fcn.004224f0
mov dword [edi], vtable.ytColorCircleNode.0
mov byte [edi + 0x12a], bl
mov esi, edi
jmp 0x450150
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x184
call fcn.0045f460
test eax, eax
je 0x45045f
mov edx, dword [esp + 0x44]
lea esi, [ebp + 0x24]
push edx
call fcn.004224f0
mov esi, eax
test esi, esi
je 0x45045f
cmp dword [ebp], 0x6a
jne 0x450252
mov eax, dword [ebp + 0xc]
shr eax, 1
cmp eax, 2
jae 0x45018d
fld dword [0x4c35e8]
mov eax, 1
mov ecx, eax
push ecx
push eax
sub esp, 8
fstp dword [esp + 4]
fld dword [0x4d3460]
jmp 0x45024a
cmp eax, 5
je 0x4501b3
mov eax, dword [esp + 0x208]
mov eax, dword [eax]
test eax, eax
je 0x4501a4
lea ecx, [eax + 4]
jmp 0x4501a6
xor ecx, ecx
push str.Shadows_need_4_arguments
call fcn.0044ea60
add esp, 4
mov eax, dword [ebp + 8]
add eax, 4
mov eax, dword [eax]
test eax, eax
je 0x4501c4
add eax, 4
jmp 0x4501c6
xor eax, eax
push eax
call fcn.0049d8a0
fstp dword [esp + 0x28]
mov eax, dword [ebp + 8]
add eax, 8
mov eax, dword [eax]
add esp, 4
test eax, eax
je 0x4501e4
add eax, 4
jmp 0x4501e6
xor eax, eax
push eax
call fcn.0049d8a0
add esp, 4
call fcn.004b2d00
mov ebx, eax
mov eax, dword [ebp + 8]
add eax, 0xc
mov eax, dword [eax]
test eax, eax
je 0x450207
add eax, 4
jmp 0x450209
xor eax, eax
push eax
call fcn.0049d8a0
add esp, 4
call fcn.004b2d00
mov edi, eax
mov eax, dword [ebp + 8]
add eax, 0x10
mov eax, dword [eax]
test eax, eax
je 0x45022a
add eax, 4
jmp 0x45022c
xor eax, eax
push eax
call fcn.0049d8a0
fstp dword [esp + 0x34]
fld dword [esp + 0x34]
add esp, 4
push edi
push ebx
sub esp, 8
fstp dword [esp + 4]
fld dword [esp + 0x34]
fstp dword [esp]
call fcn.0044af00
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x20c]
call fcn.0048c660
mov ecx, eax
mov eax, esi
call fcn.004017b0
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.00440320
test dword [ebp + 0xc], 0xfffffffe
je 0x4502c6
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
je 0x450292
add eax, 4
jmp 0x450294
xor eax, eax
lea ecx, [esp + 0x24]
push ecx
push 0x4d039c
push eax
call fcn.0049faa1
add esp, 0xc
lea edx, [esp + 0x24]
call fcn.0044e0d0
mov eax, dword [esp + 0x24]
cmp dword [esi + 0x174], eax
je 0x4502c6
or dword [esi + 8], 2
mov dword [esi + 0x174], eax
mov edx, dword [esp + 0x210]
mov edi, dword [edx]
push esi
call fcn.004404d0
mov ebx, esi
jmp 0x451435
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x18]
lea edx, [esp + 0x2c]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x20c]
push edx
mov dword [esp + 0x24], ecx
mov ecx, dword [ebp + 4]
push eax
call fcn.0048ba10
mov eax, dword [ebp]
cmp eax, 0x6c
jne 0x4503f0
test dword [ebp + 0xc], 0xfffffffe
lea esi, [eax - 0x6b]
push 0x567098
je 0x45037f
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x1e8
call fcn.0045f460
mov ebx, eax
test ebx, ebx
je 0x45036d
movq xmm0, qword [ebp + 0x24]
mov eax, dword [ebp + 8]
sub esp, 0x10
mov ecx, esp
movq qword [ecx], xmm0
movq xmm0, qword [ebp + 0x2c]
movq qword [ecx + 8], xmm0
mov ecx, dword [esp + 0x3c]
push ecx
lea edi, [esp + 0xe4]
mov dword [esp + 0x28], esi
call fcn.00401220
push eax
push ebx
call fcn.0045dd00
mov edi, eax
jmp 0x45036f
xor edi, edi
test byte [esp + 0x14], 1
je 0x4503db
lea ecx, [esp + 0xd0]
jmp 0x4503d6
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x1e8
call fcn.0045f460
xor edi, edi
cmp eax, edi
je 0x4503cb
movq xmm0, qword [ebp + 0x24]
mov edx, dword [esp + 0x2c]
sub esp, 0x10
mov ecx, esp
movq qword [ecx], xmm0
movq xmm0, qword [ebp + 0x2c]
movq qword [ecx + 8], xmm0
push edx
lea ecx, [esp + 0x58]
push ecx
push eax
mov dword [esp + 0x30], 2
mov dword [esp + 0x60], edi
call fcn.0045dd00
mov edi, eax
test byte [esp + 0x14], 2
je 0x4503db
lea ecx, [esp + 0x44]
call fcn.00401420
test edi, edi
je 0x4503e9
or dword [edi + 8], esi
mov byte [edi + 0x1cd], 1
mov esi, edi
jmp 0x450512
cmp eax, 0x6d
jne 0x450439
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x1ec
call fcn.0045f460
test eax, eax
je 0x45045f
movq xmm0, qword [ebp + 0x24]
mov edx, dword [esp + 0x2c]
sub esp, 0x10
mov ecx, esp
movq qword [ecx], xmm0
movq xmm0, qword [ebp + 0x2c]
push edx
mov esi, eax
movq qword [ecx + 8], xmm0
call fcn.0048ce20
mov esi, eax
jmp 0x450512
test dword [ebp + 0xc], 0xfffffffe
jne 0x45048e
mov eax, dword [esp + 0x208]
mov eax, dword [eax]
test eax, eax
je 0x45046f
lea ecx, [eax + 4]
push str.Statics_must_have_one_argument__contents_
call fcn.0044ea60
add esp, 4
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1f0
ret
xor ecx, ecx
push str.Statics_must_have_one_argument__contents_
call fcn.0044ea60
add esp, 4
mov eax, 4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1f0
ret
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x1e8
call fcn.0045f460
mov esi, eax
test esi, esi
je 0x4504fd
mov eax, dword [ebp + 8]
or ebx, 0xffffffff
sub esp, 0x10
mov ecx, esp
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
movq xmm0, qword [esp + 0x60]
movq qword [ecx], xmm0
mov dword [esp + 0x68], ebx
mov dword [esp + 0x6c], ebx
movq xmm0, qword [esp + 0x68]
movq qword [ecx + 8], xmm0
mov ecx, dword [esp + 0x3c]
push ecx
lea edi, [esp + 0xe8]
mov dword [esp + 0x28], 4
call fcn.00401220
push eax
push esi
call fcn.0045dd00
mov esi, eax
jmp 0x4504ff
xor esi, esi
test byte [esp + 0x14], 4
je 0x450512
lea ecx, [esp + 0xd4]
call fcn.00401420
test esi, esi
je 0x45045f
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x20c]
call fcn.0048c660
mov ecx, eax
mov eax, esi
call fcn.004017b0
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
push edx
push eax
mov ecx, esi
call fcn.00440320
mov ecx, dword [esp + 0x210]
mov edi, dword [ecx]
push esi
call fcn.004404d0
mov dword [esp + 0x44], esi
mov ebx, esi
jmp 0x451435
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x170
call fcn.0045f460
test eax, eax
je 0x45045f
call fcn.0043e090
mov dword [esp + 0x14], eax
test eax, eax
je 0x45045f
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x18]
lea ecx, [ebp + 0x24]
call fcn.00420310
mov eax, dword [esp + 0x14]
movss xmm1, dword [eax + 0x78]
or dword [eax + 8], 1
cvtsi2ss xmm0, edi
cvtss2sd xmm0, xmm0
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
movss xmm1, dword [eax + 0x7c]
cvtsd2ss xmm0, xmm0
movss dword [eax + 0x78], xmm0
cvtsi2ss xmm0, ebx
cvtss2sd xmm0, xmm0
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [eax + 0x7c], xmm0
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x210]
mov edi, dword [eax]
push edx
call fcn.004404d0
test dword [ebp + 0xc], 0xfffffffe
je 0x45062d
mov eax, dword [ebp + 8]
lea ecx, [esp + 0x14]
push ecx
push eax
call fcn.00451a00
add esp, 8
test eax, eax
je 0x45062d
mov edx, dword [esp + 0x208]
mov eax, dword [edx]
test eax, eax
je 0x45061e
lea ecx, [eax + 4]
jmp 0x450620
xor ecx, ecx
push str.Cant_load_child_PSD_file.
call fcn.0044ea60
add esp, 4
mov ebx, dword [esp + 0x14]
jmp 0x451435
mov ecx, dword [esp + 0x20c]
lea eax, [esp + 0x1c]
push eax
push ecx
mov ecx, dword [ebp + 4]
call fcn.0048ba10
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x1bc
call fcn.0045f460
test eax, eax
je 0x45045f
mov edx, dword [esp + 0x1c]
push edx
push eax
call fcn.0048d1d0
mov esi, eax
test esi, esi
je 0x45045f
mov edi, dword [ebp + 0x14]
mov ebx, dword [ebp + 0x18]
lea ecx, [ebp + 0x24]
call fcn.00420310
movss xmm1, dword [esi + 0x78]
or dword [esi + 8], 1
mov ecx, dword [esp + 0x20c]
cvtps2pd xmm1, xmm1
cvtsi2ss xmm0, edi
cvtss2sd xmm0, xmm0
addsd xmm0, xmm1
movss xmm1, dword [esi + 0x7c]
cvtsd2ss xmm0, xmm0
movss dword [esi + 0x78], xmm0
cvtsi2ss xmm0, ebx
cvtss2sd xmm0, xmm0
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
movss dword [esi + 0x7c], xmm0
mov eax, dword [ebp + 4]
call fcn.0048c660
mov ecx, eax
mov eax, esi
call fcn.004017b0
mov eax, dword [esp + 0x210]
mov edi, dword [eax]
push esi
call fcn.004404d0
mov ebx, esi
jmp 0x451435
xor esi, esi
test dword [ebp + 0xc], 0xfffffffe
jne 0x450723
mov ecx, dword [esp + 0x208]
mov eax, dword [ecx]
cmp eax, esi
je 0x450714
lea ecx, [eax + 4]
jmp 0x450716
xor ecx, ecx
push str.Need_argument_for_decrect__filename_layername_
call fcn.0044ea60
add esp, 4
push 4
call fcn.0049d99f
add esp, 4
mov dword [esp + 0x84], eax
cmp eax, esi
je 0x45073e
mov dword [eax], 1
mov ecx, dword [ebp + 8]
lea edx, [esp + 0x84]
push edx
mov byte [esp + 0x9c], 1
mov dword [esp + 0xa4], esi
mov dword [esp + 0xa0], esi
mov dword [esp + 0x8c], esi
mov dword [esp + 0x90], esi
mov dword [esp + 0x94], esi
mov dword [esp + 0xa8], esi
mov dword [esp + 0x98], esi
call fcn.0044f590
add esp, 4
cmp dword [esp + 0x94], esi
je 0x450805
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x2f4
call fcn.0045f460
mov ebx, eax
test ebx, ebx
je 0x4507c3
push ebx
lea edi, [esp + 0x88]
call fcn.00420520
mov dword [ebx], vtable.ytDecRectNode.0
jmp 0x4507c5
xor ebx, ebx
mov eax, dword [esp + 0x210]
mov edi, dword [eax]
push ebx
call fcn.004404d0
lea ecx, [ebp + 0x24]
mov eax, ebx
call fcn.00420310
mov ecx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x14]
push ecx
push eax
mov ecx, ebx
call fcn.00440320
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x20c]
call fcn.0048c660
mov ecx, eax
mov eax, ebx
call fcn.004017b0
lea esi, [esp + 0x84]
jmp 0x451430
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x170
call fcn.0045f460
test eax, eax
je 0x450899
call fcn.0043e090
mov ecx, dword [esp + 0x210]
mov dword [eax], vtable.ytButtContainer.0
mov edi, dword [ecx]
push eax
mov ebx, eax
call fcn.004404d0
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x18]
movss xmm1, dword [ebx + 0x78]
or dword [ebx + 8], 1
cvtsi2ss xmm0, eax
cvtss2sd xmm0, xmm0
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
movss xmm1, dword [ebx + 0x7c]
cvtsd2ss xmm0, xmm0
movss dword [ebx + 0x78], xmm0
cvtsi2ss xmm0, ecx
cvtss2sd xmm0, xmm0
cvtps2pd xmm1, xmm1
addsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
lea ecx, [ebp + 0x24]
mov eax, ebx
movss dword [ebx + 0x7c], xmm0
call fcn.00420310
jmp 0x451435
xor ebx, ebx
jmp 0x450846
push 0x567098
cmp eax, 0x68
jne 0x4508ca
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x2f8
call fcn.0045f460
xor esi, esi
cmp eax, esi
je 0x45045f
mov edi, eax
call fcn.0044e770
jmp 0x4508eb
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x2cc
call fcn.0045f460
test eax, eax
je 0x45045f
mov esi, eax
call fcn.004758d0
xor esi, esi
mov ebx, eax
mov dword [esp + 0x2c], ebx
cmp ebx, esi
je 0x45045f
mov eax, dword [ebp]
cmp eax, 0x77
je 0x450906
cmp eax, 0x76
jne 0x45091a
cmp byte [ebx + 0x24e], 1
je 0x45091a
or dword [ebx + 8], 7
mov byte [ebx + 0x24e], 1
mov eax, dword [ebp]
cmp eax, 0x75
je 0x450927
cmp eax, 0x76
jne 0x45095a
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x20c]
lea edx, [esp + 0x150]
push edx
call fcn.0044fc20
movq xmm0, qword [eax]
movq qword [ebx + 0xa4], xmm0
movq xmm0, qword [eax + 8]
add esp, 4
movq qword [ebx + 0xac], xmm0
mov eax, dword [esp + 0x210]
mov edi, dword [eax]
push ebx
call fcn.004404d0
test dword [ebp + 0xc], 0xfffffffe
mov dword [esp + 0x44], ebx
je 0x450980
mov ecx, dword [ebp + 8]
push ecx
push ebx
call fcn.00475cd0
push 0x41f9a0
push 0x24
mov eax, 4
lea ecx, [esp + 0x178]
call fcn.0041f810
mov edx, dword [ebp + 0xc]
and edx, 0xfffffffe
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
mov ebx, 1
cmp edx, 2
jbe 0x450b44
cmp ebx, 5
jae 0x450b44
push 4
call fcn.0049d99f
add esp, 4
mov dword [esp + 0xe8], eax
test eax, eax
je 0x4509e0
mov dword [eax], 1
xor eax, eax
mov dword [esp + 0x104], eax
mov dword [esp + 0x100], eax
mov dword [esp + 0xec], eax
mov dword [esp + 0xf0], eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0x108], eax
mov dword [esp + 0xf8], eax
lea eax, [ebx + ebx*8]
lea eax, [esp + eax*4 + 0x14c]
lea edi, [esp + 0xe8]
mov byte [esp + 0xfc], 1
mov dword [esp + 0x24], eax
call fcn.004730e0
mov esi, edi
call fcn.00473040
cmp ebx, 1
jne 0x450a6c
mov edi, dword [ebp + 8]
or dword [esp + 0x14], 8
mov edx, 0x4d0418
lea esi, [esp + 0xcc]
add edi, 4
call fcn.004011f0
mov ecx, edi
call fcn.00401360
mov byte [esp + 0x13], bl
test al, al
jne 0x450a71
mov byte [esp + 0x13], 0
test byte [esp + 0x14], 8
je 0x450a89
and dword [esp + 0x14], 0xfffffff7
lea ecx, [esp + 0xcc]
call fcn.00401420
cmp byte [esp + 0x13], 0
mov esi, dword [esp + 0x24]
push esi
je 0x450aa9
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x210]
call fcn.0044fc90
add esp, 4
jmp 0x450abb
mov eax, dword [ebp + 8]
lea ecx, [eax + ebx*4]
call fcn.0044f590
add esp, 4
test eax, eax
jne 0x450b14
lea eax, [esp + 0x50]
call fcn.00401110
mov ecx, esi
test al, al
je 0x450aed
lea eax, [esp + 0x140]
call fcn.0044c920
movq xmm0, qword [eax]
movq qword [esp + 0x50], xmm0
movq xmm0, qword [eax + 8]
movq qword [esp + 0x58], xmm0
jmp 0x450b04
lea eax, [esp + 0x130]
call fcn.0044c920
mov ecx, eax
lea eax, [esp + 0x50]
call fcn.0043d200
mov ecx, dword [ebp + 0xc]
inc ebx
shr ecx, 1
cmp ebx, ecx
jb 0x4509bc
jmp 0x450b44
mov edx, dword [ebp + 8]
lea eax, [edx + ebx*4]
mov eax, dword [eax]
test eax, eax
je 0x450b25
lea edx, [eax + 4]
jmp 0x450b27
xor edx, edx
mov eax, dword [esp + 0x208]
mov eax, dword [eax]
test eax, eax
je 0x450b39
lea ecx, [eax + 4]
jmp 0x450b3b
xor ecx, ecx
push edx
call fcn.0044ea60
add esp, 4
lea eax, [ebx - 1]
or ebx, 0xffffffff
test eax, eax
jbe 0x450c5b
mov ecx, dword [esp + 0x5c]
sub ecx, dword [esp + 0x54]
mov dword [esp + 0x14], eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x58]
sub ecx, dword [esp + 0x50]
mov dword [esp + 0x30], ecx
lea ecx, [esp + 0x18c]
mov dword [esp + 0x24], ecx
lea esp, [esp]
mov edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x30]
push 0
push edx
lea eax, [esp + 0x8c]
call fcn.00472ef0
cmp dword [esp + 0x94], 0
je 0x450c3f
mov esi, dword [esp + 0x24]
mov eax, dword [esi - 4]
sub eax, dword [esp + 0x50]
mov ecx, dword [esi]
sub ecx, dword [esp + 0x54]
sub esp, 0x10
mov dword [esi - 4], eax
mov eax, esp
mov dword [esp + 0xe8], ebx
mov dword [esp + 0xec], ebx
movq xmm0, qword [esp + 0xe8]
movq qword [eax], xmm0
mov dword [esp + 0xf0], ebx
mov dword [esp + 0xf4], ebx
movq xmm0, qword [esp + 0xf0]
lea edi, [esp + 0x94]
mov dword [esi], ecx
movq qword [eax + 8], xmm0
call fcn.00473140
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
movq xmm0, qword [esp + 0x44]
movq qword [eax], xmm0
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
movq xmm0, qword [esp + 0x4c]
movq qword [eax + 8], xmm0
mov eax, edi
add esi, 0xffffffe4
push eax
call fcn.00473870
mov eax, esi
call fcn.004730e0
lea esi, [esp + 0x84]
call fcn.00473040
add dword [esp + 0x24], 0x24
sub dword [esp + 0x14], 1
jne 0x450b80
xor edi, edi
cmp dword [esp + 0x180], edi
je 0x450d13
mov edi, dword [esp + 0x20c]
lea ecx, [esp + 0x1c]
push ecx
mov ecx, dword [ebp + 4]
push edi
call fcn.0048ba10
mov esi, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
mov eax, esi
call fcn.00475eb0
lea edx, [esp + 0x1dc]
push edx
lea eax, [esp + 0x1bc]
push eax
lea ecx, [esp + 0x19c]
push ecx
lea ecx, [esp + 0x17c]
call fcn.00475c80
mov eax, dword [ebp + 4]
lea edx, [esp + 0x160]
push edx
mov ecx, edi
call fcn.0044fc20
mov ecx, dword [eax]
mov eax, dword [eax + 4]
movss xmm2, dword [esi + 0x78]
add esp, 4
cvtsi2ss xmm0, ecx
cvtps2pd xmm2, xmm2
cvtss2sd xmm3, xmm0
ucomisd xmm2, xmm3
cvtsi2ss xmm1, eax
lahf
test ah, 0x44
jp 0x450d00
movss xmm2, dword [esi + 0x7c]
cvtps2pd xmm2, xmm2
cvtss2sd xmm3, xmm1
ucomisd xmm2, xmm3
lahf
test ah, 0x44
jnp 0x450d04
or dword [esi + 8], 1
movss dword [esi + 0x78], xmm0
movss dword [esi + 0x7c], xmm1
jmp 0x450f88
mov eax, dword [ebp]
cmp eax, 0x75
je 0x450f88
cmp eax, 0x76
je 0x450f88
push 4
call fcn.0049d99f
add esp, 4
mov dword [esp + 0x60], eax
cmp eax, edi
je 0x450d40
mov dword [eax], 1
mov esi, dword [esp + 0x20c]
lea eax, [esp + 0x60]
push eax
mov eax, dword [ebp + 4]
mov ecx, esi
mov byte [esp + 0x78], 1
mov dword [esp + 0x80], edi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], edi
mov dword [esp + 0x70], edi
mov dword [esp + 0x84], edi
mov dword [esp + 0x74], edi
call fcn.0044fc90
add esp, 4
cmp dword [esp + 0x70], edi
je 0x450f7f
mov eax, dword [ebp + 4]
mov ecx, esi
call fcn.0048c660
mov esi, dword [esp + 0x2c]
mov ecx, eax
mov eax, esi
call fcn.004017b0
mov ecx, dword [esp + 0x7c]
mov eax, dword [esp + 0x78]
push ecx
push eax
mov ecx, esi
call fcn.00440320
push 4
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], edi
call fcn.0049d99f
add esp, 4
mov dword [esp + 0x84], eax
cmp eax, edi
je 0x450dd8
mov dword [eax], 1
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
xor eax, eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
push eax
lea edi, [esp + 0x38]
lea eax, [esp + 0xac]
mov byte [esp + 0x9c], 1
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], edx
call fcn.00472fb0
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
movq xmm0, qword [esp + 0x44]
movq qword [eax], xmm0
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
movq xmm0, qword [esp + 0x4c]
movq qword [eax + 8], xmm0
lea eax, [esp + 0xb8]
push eax
lea esi, [esp + 0x74]
call fcn.00473870
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x6c]
xor eax, eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
push eax
lea edi, [esp + 0x38]
lea eax, [esp + 0x110]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x44], edx
call fcn.00472fb0
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
movq xmm0, qword [esp + 0x44]
movq qword [eax], xmm0
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
movq xmm0, qword [esp + 0x4c]
movq qword [eax + 8], xmm0
lea eax, [esp + 0x11c]
push eax
call fcn.00473870
movss xmm0, dword [0x4d34e0]
lea ecx, [esp + 0x10c]
call fcn.00457ea0
sub esp, 0x10
mov eax, esp
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
movq xmm0, qword [esp + 0x44]
movq qword [eax], xmm0
lea ecx, [esp + 0xb8]
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], ebx
movq xmm0, qword [esp + 0x4c]
push ecx
movq qword [eax + 8], xmm0
call fcn.00473270
movss xmm0, dword [0x4d3c18]
lea ecx, [esp + 0xa8]
call fcn.00457ea0
lea edx, [esp + 0x84]
push edx
lea eax, [esp + 0x110]
push eax
lea ecx, [esp + 0xb0]
push ecx
mov ecx, esi
mov esi, dword [esp + 0x38]
call fcn.00475c80
lea esi, [esp + 0x10c]
call fcn.00473040
lea esi, [esp + 0xa8]
call fcn.00473040
lea esi, [esp + 0x84]
call fcn.00473040
lea esi, [esp + 0x60]
call fcn.00473040
push fcn.004730d0
push 0x24
mov eax, 4
lea ecx, [esp + 0x178]
call fcn.0041f1a0
mov ebx, dword [esp + 0x44]
jmp 0x451435
push 0x567098
call esi
mov edi, 0x1f8
call fcn.0045f460
test eax, eax
je case.0x4500bd.107
mov edi, eax
call fcn.0044e120
mov ecx, eax
test ecx, ecx
je case.0x4500bd.107
mov edx, dword [ebp + 0x18]
mov eax, dword [ebp + 0x14]
push edx
push eax
call fcn.00440320
mov edx, dword [esp + 0x210]
mov edi, dword [edx]
push ecx
call fcn.004404d0
cmp dword [ebp], 0x6f
mov eax, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x18]
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], ecx
je 0x451036
push 0x567098
call esi
mov edi, 0x198
call fcn.0045f460
test eax, eax
je 0x45045f
movq xmm0, qword [ebp + 0x24]
sub esp, 0x10
mov ecx, esp
movq qword [ecx], xmm0
movq xmm0, qword [ebp + 0x2c]
movq qword [ecx + 8], xmm0
call fcn.0044c430
jmp 0x451172
mov eax, dword [ebp + 0xc]
shr eax, 1
cmp eax, 4
jne 0x451105
mov eax, dword [ebp + 8]
mov eax, dword [eax]
test eax, eax
je 0x451052
add eax, 4
jmp 0x451054
xor eax, eax
push eax
call fcn.0049d8a0
fstp dword [esp + 0x34]
mov eax, dword [ebp + 8]
add eax, 4
mov eax, dword [eax]
add esp, 4
test eax, eax
je 0x451072
add eax, 4
jmp 0x451074
xor eax, eax
push eax
call fcn.0049d763
mov esi, eax
mov eax, dword [ebp + 8]
add eax, 8
mov eax, dword [eax]
add esp, 4
test eax, eax
je 0x451090
add eax, 4
jmp 0x451092
xor eax, eax
push eax
call fcn.0049d763
mov ebx, eax
mov eax, dword [ebp + 8]
add eax, 0xc
mov eax, dword [eax]
add esp, 4
test eax, eax
je 0x4510ae
add eax, 4
jmp 0x4510b0
xor eax, eax
push eax
call fcn.0049d8a0
fstp dword [esp + 0x20]
add esp, 4
push 0x567098
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov edi, 0x1f4
call fcn.0045f460
test eax, eax
je 0x45045f
movq xmm0, qword [ebp + 0x24]
fld dword [esp + 0x1c]
push ebx
push esi
sub esp, 0x10
mov ecx, esp
movq qword [ecx], xmm0
movq xmm0, qword [ebp + 0x2c]
sub esp, 8
movq qword [ecx + 8], xmm0
fstp dword [esp + 4]
fld dword [esp + 0x50]
jmp 0x451168
test eax, eax
je 0x451118
push 0
mov ecx, str.Shadows_require_4_arguments__radius__xoffset__yoffset__opacity_
call fcn.0044ea60
add esp, 4
push 0x567098
call esi
mov edi, 0x1f4
call fcn.0045f460
test eax, eax
je 0x45045f
movq xmm0, qword [ebp + 0x24]
fld dword [0x4d3b70]
mov edx, 4
push edx
mov ecx, 3
push ecx
sub esp, 0x10
mov ecx, esp
movq qword [ecx], xmm0
movq xmm0, qword [ebp + 0x2c]
sub esp, 8
movq qword [ecx + 8], xmm0
fstp dword [esp + 4]
fld dword [0x4d3a08]
mov esi, eax
fstp dword [esp]
call fcn.0044c680
mov ebx, eax
test ebx, ebx
je 0x45045f
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x44]
push edx
push eax
mov ecx, ebx
call fcn.00440320
mov ecx, dword [esp + 0x210]
mov edi, dword [ecx]
push ebx
call fcn.004404d0
cmp dword [ebp], 0x79
jne 0x451435
mov edx, dword [ebx]
mov eax, dword [edx + 0x64]
push 0
mov ecx, ebx
call eax
jmp 0x451435
cmp eax, 0x65
sete byte [esp + 0x13]
cmp eax, 0x66
sete byte [esp + 0x1b]
cmp eax, 0x74
push 4
sete byte [esp + 0x53]
call fcn.0049d99f
xor esi, esi
add esp, 4
mov dword [esp + 0x60], eax
cmp eax, esi
je 0x4511e8
mov dword [eax], 1
mov byte [esp + 0x74], 1
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], esi
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x70], esi
cmp byte [esp + 0x13], bl
jne 0x45122e
cmp byte [esp + 0x1b], bl
jne 0x45122e
mov eax, dword [ebp + 4]
lea ecx, [esp + 0x60]
push ecx
mov ecx, dword [esp + 0x210]
call fcn.0044fc90
jmp 0x45128c
mov edx, dword [ebp + 0xc]
and edx, 0xfffffffe
cmp edx, 2
je 0x45125e
push 0
mov ecx, str.This_bitmap_widget_must_reference_a_layer__target_.
call fcn.0044ea60
add esp, 4
lea esi, [esp + 0x60]
call fcn.00473040
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1f0
ret
mov ecx, dword [ebp + 8]
lea eax, [esp + 0x60]
push eax
call fcn.0044f590
add esp, 4
cmp dword [esp + 0x70], esi
jne 0x451299
mov eax, dword [ebp + 0x10]
cmp eax, esi
je 0x451280
lea ecx, [eax + 4]
jmp 0x451282
xor ecx, ecx
push str.Bitmap_not_loaded.
call fcn.0044ea60
add esp, 4
cmp dword [esp + 0x70], esi
je 0x45142c
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x18]
push 0x567098
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], edx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
cmp byte [esp + 0x13], bl
je 0x4512f0
mov edi, 0x194
call fcn.0045f460
cmp eax, esi
je 0x4512df
push eax
lea edi, [esp + 0x64]
call fcn.0044e1b0
lea ecx, [ebp + 0x24]
mov ebx, eax
call fcn.00420310
jmp 0x4513ec
xor ebx, ebx
lea ecx, [ebp + 0x24]
mov eax, ebx
call fcn.00420310
jmp 0x4513ec
cmp byte [esp + 0x4f], bl
je 0x451317
mov edi, 0x8d4
call fcn.0045f460
cmp eax, esi
je 0x451310
call fcn.0044e550
mov ebx, eax
jmp 0x4513ec
xor ebx, ebx
jmp 0x4513ec
mov edi, 0x2f4
call fcn.0045f460
cmp eax, esi
je 0x451333
push eax
lea edi, [esp + 0x64]
call fcn.00420520
mov ebx, eax
jmp 0x451335
xor ebx, ebx
cmp byte [ebx + 0x123], 0
je 0x451342
or dword [ebx + 8], 2
cmp byte [esp + 0x1b], 0
mov byte [ebx + 0x123], 0
je 0x4513ec
mov eax, dword [ebp + 0x1c]
sub eax, dword [ebp + 0x14]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x1c], eax
fild dword [esp + 0x1c]
fild dword [esp + 0x68]
test ecx, ecx
jge 0x451374
fadd dword [0x4d33b0]
fdivp st(1)
mov edx, dword [ebp + 0x20]
sub edx, dword [ebp + 0x18]
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x1c], edx
fstp dword [esp + 0x30]
fild dword [esp + 0x1c]
fild dword [esp + 0x6c]
test eax, eax
jge 0x45139a
fadd dword [0x4d33b0]
fdivp st(1)
fstp dword [esp + 0x44]
fld dword [esp + 0x44]
fld dword [ebx + 0x8c]
movss xmm0, dword [esp + 0x44]
fucompi st(1)
fstp st(0)
lahf
test ah, 0x44
jp 0x4513d2
movss xmm1, dword [ebx + 0x90]
cvtps2pd xmm1, xmm1
cvtps2pd xmm2, xmm0
ucomisd xmm1, xmm2
lahf
test ah, 0x44
jnp 0x4513d6
or dword [ebx + 8], 1
movss xmm1, dword [esp + 0x30]
movss dword [ebx + 0x8c], xmm1
movss dword [ebx + 0x90], xmm0
mov ecx, dword [esp + 0x210]
mov edi, dword [ecx]
push ebx
call fcn.004404d0
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x20c]
call fcn.0048c660
mov ecx, eax
mov eax, ebx
call fcn.004017b0
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
push edx
push eax
mov ecx, ebx
call fcn.00440320
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], esi
lea esi, [esp + 0x60]
call fcn.00473040
test ebx, ebx
je 0x451494
mov eax, dword [esp + 0x214]
add ebp, 0x10
push ebp
lea edi, [esp + 0x28]
call fcn.0044eca0
add esp, 4
mov ecx, edi
push ecx
push ebx
call fcn.00454560
add esp, 8
test eax, eax
je 0x45147c
mov eax, dword [esp + 0x24]
test eax, eax
je 0x45146d
lea ecx, [eax + 4]
jmp 0x45146f
xor ecx, ecx
push str.Collision_found___layer_object_names_must_be_unique_
call fcn.0044ea60
add esp, 4
lea edx, [esp + 0x24]
push edx
mov eax, ebx
call fcn.004514e0
add esp, 4
lea ecx, [esp + 0x24]
call fcn.00401420
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1f0
ret