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

Disassembly:
sub esp, 0xe4
mov eax, dword [0x10092c4c]
xor eax, esp
mov dword [esp + 0xe0], eax
mov ecx, dword [0x10093708]
push ebx
mov ebx, dword [esp + 0xf4]
push ebp
mov eax, dword [ecx + 0x3e60]
mov ebp, dword [esp + 0xf4]
push edi
mov edi, dword [esp + 0xf4]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e60]
mov dword [esp + 0x44], edi
mov dword [esp + 0x24], ebp
mov dword [esp + 0x1c], eax
cmp byte [eax + 0xaf], 0
je 0x10049d14
pop edi
pop ebp
xor al, al
pop ebx
mov ecx, dword [esp + 0xe0]
xor ecx, esp
call fcn.10074697
add esp, 0xe4
ret
push esi
mov esi, dword [0x10093708]
call fcn.10012d50
fstp dword [esp + 0x6c]
call fcn.1000d2d0
fstp dword [esp + 0x70]
test bl, 0x10
je 0x10049d37
xorps xmm0, xmm0
jmp 0x10049d45
movss xmm0, dword [esp + 0x6c]
addss xmm0, dword [esi + 0x37dc]
movss xmm1, dword [esp + 0x70]
subss xmm1, xmm0
movss dword [esp + 0x40], xmm0
push 0
push edi
movss dword [esp + 0x44], xmm1
call fcn.10012250
mov dword [esp + 0x4c], eax
mov dword [esi + 0x46c0], 0
mov dword [esi + 0x46c4], 0
call fcn.1000c9a0
push edi
call fcn.1001e140
mov eax, dword [esi + 0x5a14]
add esp, 0xc
mov edi, dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov dword [esp + 0x8c], eax
test eax, eax
jne 0x10049ddb
mov eax, dword [esp + 0x20]
cmp dword [eax + 0xe4], 0
jg 0x10049dc5
push 0x737
push str.D:Projectm2extLibrariesimguiimgui.h
push str.Size___0
call edi
mov eax, dword [esp + 0x2c]
add esp, 0xc
mov ecx, dword [eax + 0xe4]
mov eax, dword [eax + 0xec]
mov eax, dword [eax + ecx*4 - 4]
mov dword [esi + 0x5a14], eax
mov dword [esp + 0x84], ebx
test ebx, 0x20
je 0x10049df6
and ebx, 0xff9fffff
or ebx, 0x100008
test bl, 8
jne 0x10049e05
push ebx
push ebp
call fcn.1004ab50
add esp, 8
mov ecx, dword [esi + 0x5a10]
test ebx, 0x700000
jne 0x10049e1c
mov eax, ecx
and eax, 0x700000
or ebx, eax
test ebx, 0x1800000
jne 0x10049e2d
mov eax, ecx
and eax, 0x1800000
or ebx, eax
test ebx, 0x6000000
jne 0x10049e3e
mov eax, ecx
and eax, 0x6000000
or ebx, eax
test ebx, 0x18000000
jne 0x10049e4f
mov eax, ecx
and eax, 0x18000000
or ebx, eax
and ecx, 0xe00fffff
or ebx, ecx
mov ecx, ebx
mov dword [esp + 0x60], ebx
and ecx, 0x700000
je 0x10049e6c
lea eax, [ecx - 1]
test ecx, eax
je 0x10049e80
push 0x141f
push str.D:Projectm2extLibrariesimguiimgui_widgets.cpp
push str.ImIsPowerOfTwo_flags__ImGuiColorEditFlags_DisplayMask__
call edi
add esp, 0xc
mov ecx, ebx
and ecx, 0x18000000
je 0x10049e91
lea eax, [ecx - 1]
test ecx, eax
je 0x10049ea5
push 0x1420
push str.D:Projectm2extLibrariesimguiimgui_widgets.cpp
push str.ImIsPowerOfTwo_flags__ImGuiColorEditFlags_InputMask__
call edi
add esp, 0xc
movss xmm0, dword [ebp]
mov edx, ebx
movss xmm2, dword [ebp + 4]
mov eax, ebx
movss xmm3, dword [ebp + 8]
movss xmm1, dword [0x10079280]
shr edx, 1
not dl
shr eax, 0x13
and edx, 0xffffff01
movss dword [esp + 0x90], xmm0
movzx ecx, dl
and eax, 0xffffff01
add ecx, 3
mov dword [esp + 0x34], edx
mov dword [esp + 0x58], eax
mov dword [esp + 0x14], ecx
movss dword [esp + 0x94], xmm2
movss dword [esp + 0x98], xmm3
movss dword [esp + 0x68], xmm1
test dl, dl
je 0x10049f0e
movss xmm1, dword [ebp + 0xc]
mov eax, ebx
movss dword [esp + 0x9c], xmm1
and eax, 0x10100000
mov dword [esp + 0x88], eax
cmp eax, 0x10100000
jne 0x10049f62
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x98]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
movss dword [esp], xmm0
call fcn.1000e9a0
add esp, 0x18
jmp 0x10049fc2
mov eax, ebx
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x10049fea
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x98]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm3
movss dword [esp + 4], xmm2
movss dword [esp], xmm0
call fcn.1000eb30
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0xb0]
push eax
lea eax, [esp + 0xb0]
push eax
push ebp
call fcn.1004af70
add esp, 0x28
mov ecx, dword [esp + 0x14]
movss xmm0, dword [esp + 0x90]
movss xmm2, dword [esp + 0x94]
movss xmm3, dword [esp + 0x98]
movss xmm1, dword [esp + 0x9c]
movss xmm5, dword [0x10088c9c]
xorps xmm4, xmm4
comiss xmm0, xmm4
movss xmm4, dword [0x10079278]
jb 0x1004a007
movaps xmm7, xmm4
jmp 0x1004a00a
movaps xmm7, xmm5
movss xmm6, dword [0x10080454]
mulss xmm0, xmm6
addss xmm0, xmm7
xorps xmm7, xmm7
comiss xmm2, xmm7
cvttss2si eax, xmm0
mov dword [esp + 0xa0], eax
jb 0x1004a032
movaps xmm0, xmm4
jmp 0x1004a035
movaps xmm0, xmm5
comiss xmm3, xmm7
mulss xmm2, xmm6
addss xmm2, xmm0
cvttss2si eax, xmm2
mov dword [esp + 0xa4], eax
jb 0x1004a052
movaps xmm0, xmm4
jmp 0x1004a055
movaps xmm0, xmm5
comiss xmm1, xmm7
mulss xmm3, xmm6
addss xmm3, xmm0
cvttss2si eax, xmm3
mov dword [esp + 0xa8], eax
jae 0x1004a070
movaps xmm4, xmm5
mov edx, dword [esp + 0x20]
mulss xmm1, xmm6
mov byte [esp + 0x12], 0
mov byte [esp + 0x13], 0
addss xmm1, xmm4
cvttss2si eax, xmm1
mov dword [esp + 0xac], eax
cmp dword [esi + 0x381c], 0
movss xmm2, dword [edx + 0xf0]
movss xmm3, dword [edx + 0xf4]
movss dword [esp + 0x30], xmm2
movss dword [esp + 0x38], xmm3
jne 0x1004a0be
movss xmm1, dword [esp + 0x40]
jmp 0x1004a0c1
xorps xmm1, xmm1
movaps xmm0, xmm2
mov ebp, ebx
addss xmm0, xmm1
and ebp, 0x20
mov dword [esp + 0x64], ebp
movss dword [edx + 0xf0], xmm0
test ebx, 0x300000
je 0x1004a3de
test ebp, ebp
jne 0x1004a3de
movss xmm2, dword [esi + 0x37dc]
lea eax, [ecx - 1]
movss xmm1, dword [esp + 0x3c]
movaps xmm0, xmm2
movd xmm3, eax
mov ebp, ebx
cvtdq2ps xmm3, xmm3
push ecx
mov dword [esp], 0xbf800000
and ebp, 0x1000000
push 0
push 0
mulss xmm0, xmm3
subss xmm1, xmm0
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
mov ecx, str.M:000
divss xmm1, xmm0
cvttss2si eax, xmm1
movss xmm1, dword [0x10079280]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
maxss xmm1, xmm0
movss xmm0, dword [esp + 0x48]
addss xmm2, xmm1
movss dword [esp + 0x38], xmm1
movss xmm1, dword [0x10079280]
mulss xmm2, xmm3
subss xmm0, xmm2
cvttss2si eax, xmm0
movd xmm0, eax
mov eax, str.M:0.000
cvtdq2ps xmm0, xmm0
cmove eax, ecx
push eax
lea eax, [esp + 0x28]
push eax
maxss xmm1, xmm0
movss dword [esp + 0x70], xmm1
call fcn.1000d760
movss xmm1, dword [esp + 0x40]
add esp, 0x14
movss xmm0, dword [eax]
comiss xmm0, xmm1
jb 0x1004a1a9
xor eax, eax
jmp 0x1004a1b7
mov eax, ebx
and eax, 0x200000
neg eax
sbb eax, eax
neg eax
inc eax
xor edi, edi
cmp dword [esp + 0x14], edi
jbe 0x1004a3d7
shl eax, 4
test ebp, ebp
je 0x1004a2da
mov ecx, ebx
lea eax, [eax + 0x10091058]
mov bl, byte [esp + 0x12]
and ecx, 8
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], ecx
nop dword [eax]
test edi, edi
je 0x1004a21e
movss xmm0, dword [esi + 0x37dc]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.10021380
movss xmm1, dword [esp + 0x34]
add esp, 8
mov eax, dword [esp + 0x14]
lea ebp, [edi + 1]
cmp ebp, eax
jge 0x1004a22a
movaps xmm0, xmm1
jmp 0x1004a230
movss xmm0, dword [esp + 0x5c]
push ecx
movss dword [esp], xmm0
call fcn.10022960
add esp, 4
cmp byte [esp + 0x58], 0
je 0x1004a24a
xorps xmm0, xmm0
jmp 0x1004a252
movss xmm0, dword [0x10079280]
mov eax, dword [esp + 0x24]
push 0
movss dword [esp + 0x50], xmm0
mov dword [esp + 0x54], 0
push dword [eax]
lea eax, [esp + 0x54]
push eax
lea eax, [esp + 0x5c]
push eax
push ecx
lea eax, [esp + 0xa4]
mov dword [esp], 0x3b808081
lea eax, [eax + edi*4]
push eax
push 8
push dword [edi*4 + 0x10091018]
call fcn.1004ee20
or bl, al
add esp, 0x20
or byte [esp + 0x13], bl
cmp dword [esp + 0x18], 0
jne 0x1004a2b2
push 1
push str.context
call fcn.1001d730
add esp, 8
add dword [esp + 0x24], 4
mov edi, ebp
mov eax, dword [esp + 0x14]
movss xmm1, dword [esp + 0x2c]
cmp edi, eax
jl 0x1004a1f0
mov byte [esp + 0x12], bl
xor edi, edi
mov ebx, dword [esp + 0x60]
jmp 0x1004a5d1
xor edx, edx
lea eax, [eax + 0x10091028]
xor edi, edi
mov dword [esp + 0x24], eax
cmp byte [esp + 0x58], dl
mov ecx, 0xff
mov eax, dword [esp + 0x14]
cmovne ecx, edx
mov dword [esp + 0x18], ecx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ecx, 8
mov dword [esp + 0x4c], ecx
nop dword [eax]
test edi, edi
jle 0x1004a33e
movss xmm0, dword [esi + 0x37dc]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.10021380
movss xmm1, dword [esp + 0x34]
add esp, 8
mov eax, dword [esp + 0x14]
lea ebp, [edi + 1]
cmp ebp, eax
jge 0x1004a34a
movaps xmm0, xmm1
jmp 0x1004a350
movss xmm0, dword [esp + 0x5c]
push ecx
movss dword [esp], xmm0
call fcn.10022960
mov eax, dword [esp + 0x28]
add esp, 4
mov dword [esp + 0x18], ebx
mov dword [esp + 0x50], 0
push 0
push dword [eax]
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x5c]
push eax
push ecx
lea eax, [esp + 0xb4]
mov dword [esp], 0x3f800000
lea eax, [eax + edi*4]
push eax
push 4
push dword [edi*4 + 0x10091018]
call fcn.1004ee20
or byte [esp + 0x32], al
add esp, 0x20
cmp dword [esp + 0x4c], 0
jne 0x1004a3ba
push 1
push str.context
call fcn.1001d730
add esp, 8
add dword [esp + 0x24], 4
mov edi, ebp
mov eax, dword [esp + 0x14]
movss xmm1, dword [esp + 0x2c]
cmp edi, eax
jl 0x1004a310
mov ebx, dword [esp + 0x60]
xor edi, edi
jmp 0x1004a5d1
mov eax, ebx
mov edi, ebp
and eax, 0x400020
cmp eax, 0x400000
jne 0x1004a5e1
cmp byte [esp + 0x34], 0
mov eax, 0xff
je 0x1004a472
mov ebp, dword [esp + 0xa0]
test ebp, ebp
jns 0x1004a40d
xor ebp, ebp
jmp 0x1004a412
cmp ebp, eax
cmovg ebp, eax
mov edi, dword [esp + 0xa4]
test edi, edi
jns 0x1004a421
xor edi, edi
jmp 0x1004a426
cmp edi, eax
cmovg edi, eax
mov edx, dword [esp + 0xa8]
test edx, edx
jns 0x1004a435
xor edx, edx
jmp 0x1004a43a
cmp edx, eax
cmovg edx, eax
mov ecx, dword [esp + 0xac]
test ecx, ecx
jns 0x1004a449
xor ecx, ecx
jmp 0x1004a44e
cmp ecx, eax
cmovg ecx, eax
push ecx
push edx
push edi
push ebp
push 0x10088188
lea eax, [esp + 0xc4]
push 0x40
push eax
call fcn.10014210
mov ebp, dword [esp + 0x80]
add esp, 0x1c
jmp 0x1004a4c8
mov edi, dword [esp + 0xa4]
test edi, edi
jns 0x1004a481
xor edi, edi
jmp 0x1004a486
cmp edi, eax
cmovg edi, eax
mov edx, dword [esp + 0xa0]
test edx, edx
jns 0x1004a495
xor edx, edx
jmp 0x1004a49a
cmp edx, eax
cmovg edx, eax
mov ecx, dword [esp + 0xa8]
test ecx, ecx
jns 0x1004a4a9
xor ecx, ecx
jmp 0x1004a4ae
cmp ecx, eax
cmovg ecx, eax
push ecx
push edi
push edx
push 0x1008819c
lea eax, [esp + 0xc0]
push 0x40
push eax
call fcn.10014210
add esp, 0x18
movss xmm4, dword [esp + 0x3c]
push ecx
movss dword [esp], xmm4
call fcn.10022960
push 0
push 0
push 6
lea eax, [esp + 0x28]
mov dword [esp + 0x28], 0
push eax
push 0x40
lea eax, [esp + 0xc8]
mov dword [esp + 0x34], 0
push eax
push 0
push str.Text
call fcn.10050180
add esp, 0x24
test al, al
je 0x1004a5bb
mov byte [esp + 0x12], 1
lea ecx, [esp + 0xb0]
mov al, byte [ecx]
cmp al, 0x23
je 0x1004a52f
cmp al, 0x20
je 0x1004a52f
cmp al, 9
jne 0x1004a532
inc ecx
jmp 0x1004a521
cmp byte [esp + 0x34], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xac], 0xff
je 0x1004a595
lea eax, [esp + 0xac]
push eax
lea eax, [esp + 0xac]
push eax
lea eax, [esp + 0xac]
push eax
lea eax, [esp + 0xac]
push eax
push str._02X_02X_02X_02X
push ecx
call fcn.10028e90
add esp, 0x18
jmp 0x1004a5bb
lea eax, [esp + 0xa8]
push eax
lea eax, [esp + 0xa8]
push eax
lea eax, [esp + 0xa8]
push eax
push str._02X_02X_02X
push ecx
call fcn.10028e90
add esp, 0x14
mov edi, ebp
test bl, 8
jne 0x1004a5d1
push 1
push str.context
call fcn.1001d730
add esp, 8
movss xmm2, dword [esp + 0x30]
movss xmm3, dword [esp + 0x38]
mov edx, dword [esp + 0x20]
xor ebp, ebp
test bl, 0x10
jne 0x1004a7e2
mov edi, dword [esp + 0x64]
test edi, edi
jne 0x1004a60c
cmp dword [esi + 0x381c], ebp
je 0x1004a60c
movss xmm1, dword [esp + 0x3c]
addss xmm1, dword [esi + 0x37dc]
jmp 0x1004a60f
xorps xmm1, xmm1
cmp byte [esp + 0x34], 0
movaps xmm0, xmm2
mov eax, dword [esp + 0x28]
addss xmm0, xmm1
movss dword [edx + 0xf4], xmm3
movss dword [edx + 0xf0], xmm0
je 0x1004a63c
movss xmm0, dword [eax + 0xc]
movss dword [esp + 0x68], xmm0
movss xmm0, dword [eax]
movss dword [esp + 0x74], xmm0
movss xmm0, dword [eax + 4]
movss dword [esp + 0x78], xmm0
movss xmm0, dword [eax + 8]
lea eax, [esp + 0x18]
push eax
push ebx
lea eax, [esp + 0x7c]
movss dword [esp + 0x84], xmm0
movss xmm0, dword [esp + 0x70]
push eax
push str.ColorButton
movss dword [esp + 0x90], xmm0
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebp
call fcn.100496e0
add esp, 0x10
test al, al
je 0x1004a6f6
test bl, 4
jne 0x1004a6f6
movups xmm0, xmmword [esp + 0x74]
push 0
push str.picker
movups xmmword [esi + 0x5a28], xmm0
call fcn.1001d480
movss xmm0, dword [esi + 0x46ec]
lea eax, [esp + 0x20]
xorps xmm4, xmm4
mov dword [esp + 0x20], ebp
addss xmm0, xmm4
mov dword [esp + 0x24], ebp
push eax
lea eax, [esp + 0x5c]
push 0
push eax
movss dword [esp + 0x64], xmm0
movss xmm0, dword [esi + 0x37d8]
addss xmm0, dword [esi + 0x46f8]
movss dword [esp + 0x68], xmm0
call fcn.10022980
add esp, 0x14
test bl, 8
jne 0x1004a70a
push 1
push str.context
call fcn.1001d730
add esp, 8
push 0
push str.picker
call fcn.1000cb10
add esp, 8
test al, al
je 0x1004a7e2
mov eax, dword [esi + 0x3e60]
cmp word [eax + 0xb6], 1
jne 0x1004a7dd
mov ecx, dword [esp + 0x44]
mov ebp, eax
mov eax, dword [esp + 0x48]
cmp eax, ecx
je 0x1004a796
push 0
push ecx
push eax
call fcn.10059900
mov ecx, dword [0x10093708]
add esp, 0xc
mov eax, dword [ecx + 0x3e60]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e60]
cmp byte [eax + 0xaf], 0
jne 0x1004a796
push ecx
lea eax, [esp + 0x1c]
mov dword [esp], 0xbf800000
push eax
mov dword [esp + 0x20], 0
mov dword [esp + 0x24], 0
call fcn.10017830
add esp, 8
movss xmm0, dword [esp + 0x6c]
mulss xmm0, dword [0x100792b4]
push ecx
movss dword [esp], xmm0
call fcn.10022960
lea eax, [esi + 0x5a28]
push eax
mov eax, dword [esp + 0x8c]
and eax, 0x1f890002
or eax, 0x740080
push eax
push dword [esp + 0x34]
push 0x10078490
call fcn.1004b050
add esp, 0x14
or byte [esp + 0x12], al
call fcn.100112b0
mov eax, dword [esp + 0x44]
cmp dword [esp + 0x48], eax
je 0x1004a84e
test bl, bl
js 0x1004a84e
movss xmm0, dword [esi + 0x37dc]
sub esp, 8
movss dword [esp + 4], xmm0
mov dword [esp], 0
call fcn.10021380
add esp, 8
test edi, edi
je 0x1004a81c
movss xmm0, dword [esp + 0x40]
jmp 0x1004a82a
movss xmm0, dword [esp + 0x70]
addss xmm0, dword [esi + 0x37dc]
addss xmm0, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
push 0
push dword [esp + 0x48]
push dword [esp + 0x50]
movss dword [eax + 0xf0], xmm0
call fcn.10059900
add esp, 0xc
cmp byte [esp + 0x12], 0
je 0x1004aa05
test ebp, ebp
jne 0x1004aa05
cmp byte [esp + 0x13], 0
jne 0x1004a882
movups xmm0, xmmword [esp + 0xa0]
cvtdq2ps xmm0, xmm0
divps xmm0, xmmword [0x10088cd0]
movups xmmword [esp + 0x90], xmm0
mov eax, ebx
and eax, 0x8200000
cmp eax, 0x8200000
jne 0x1004a965
movss xmm0, dword [esp + 0x90]
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x98]
movss dword [esi + 0x5a1c], xmm0
movss xmm0, dword [esp + 0x98]
push eax
lea eax, [esp + 0x98]
movss dword [esi + 0x5a20], xmm0
movss xmm0, dword [esp + 0xa0]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0xac]
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0xa8]
movss dword [esp], xmm0
call fcn.1000e9a0
mov eax, dword [esi + 0x5a14]
mov dword [esi + 0x5a18], eax
lea eax, [esp + 0x8c]
movss xmm0, dword [esp + 0xa8]
movss dword [esp + 0x8c], xmm0
movss xmm0, dword [esp + 0xac]
movss dword [esp + 0x90], xmm0
movss xmm0, dword [esp + 0xb0]
push eax
movss dword [esp + 0x98], xmm0
mov dword [esp + 0x9c], 0
call fcn.1000e8e0
add esp, 0x1c
mov dword [esi + 0x5a24], eax
cmp dword [esp + 0x88], 0x10100000
jne 0x1004a9c1
movss xmm0, dword [esp + 0x98]
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x98]
push eax
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [esp + 0xac]
movss dword [esp + 4], xmm0
movss xmm0, dword [esp + 0xa8]
movss dword [esp], xmm0
call fcn.1000eb30
add esp, 0x18
cmp byte [esp + 0x34], 0
mov edi, dword [esp + 0x28]
movss xmm0, dword [esp + 0x90]
movss dword [edi], xmm0
movss xmm0, dword [esp + 0x94]
movss dword [edi + 4], xmm0
movss xmm0, dword [esp + 0x98]
movss dword [edi + 8], xmm0
je 0x1004aa09
movss xmm0, dword [esp + 0x9c]
movss dword [edi + 0xc], xmm0
jmp 0x1004aa09
mov edi, dword [esp + 0x28]
cmp dword [esp + 0x8c], 0
jne 0x1004aa1d
mov dword [esi + 0x5a14], 0
call fcn.1001db30
call fcn.10011020
test byte [esi + 0x46e8], 1
je 0x1004aaf2
test ebx, 0x200
jne 0x1004aaf2
call fcn.1000c8d0
test al, al
je 0x1004aaf2
push 0
push str._COL3F
mov byte [esp + 0x1b], 0
call fcn.10008f30
add esp, 8
test eax, eax
je 0x1004aa7f
mov eax, dword [eax]
mov byte [esp + 0x13], 1
mov byte [esp + 0x12], 1
movq xmm0, qword [eax]
movq qword [edi], xmm0
mov eax, dword [eax + 8]
mov dword [edi + 8], eax
push 0
push str._COL4F
call fcn.10008f30
add esp, 8
test eax, eax
je 0x1004aaac
mov ecx, dword [esp + 0x14]
shl ecx, 2
push ecx
push dword [eax]
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esp + 0x12], 1
jmp 0x1004aab3
cmp byte [esp + 0x13], 0
je 0x1004aaed
test ebx, 0x10000000
je 0x1004aaed
movss xmm0, dword [edi + 8]
lea ecx, [edi + 8]
push ecx
lea eax, [edi + 4]
push eax
push edi
sub esp, 0xc
movss dword [esp + 8], xmm0
movss xmm0, dword [eax]
movss dword [esp + 4], xmm0
movss xmm0, dword [edi]
movss dword [esp], xmm0
call fcn.1000eb30
add esp, 0x18
call fcn.10010b80
test ebp, ebp
je 0x1004ab0e
mov eax, dword [esi + 0x3eac]
test eax, eax
je 0x1004ab0e
cmp dword [esi + 0x3ec8], ebp
jne 0x1004ab0e
mov dword [esi + 0x46e0], eax
mov bl, byte [esp + 0x12]
test bl, bl
je 0x1004ab29
mov ecx, dword [esi + 0x46e0]
test ecx, ecx
je 0x1004ab29
push ecx
call fcn.100181a0
add esp, 4
mov ecx, dword [esp + 0xf0]
mov al, bl
pop esi
pop edi
pop ebp
pop ebx
xor ecx, esp
call fcn.10074697
add esp, 0xe4
ret