Function at 0x1011580d
Capabilities:
Create process on windows
Encode data using base64

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10177781
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x150
push esi
push edi
xor edi, edi
mov dword [ebp - 0x2c], edi
mov eax, dword [0x1029d678]
mov dword [ebp - 0x18], edi
cmp eax, 3
ja case.default.0x1011267a
jmp dword [eax*4 + 0x101163e8]
mov eax, dword [0x1029bac8]
push ecx
push str.ConfigSettingsTable
mov dword [ebp - 0xb0], edi
mov ecx, dword [eax + 0x3e58]
mov dword [ebp - 0xac], edi
call fcn.10041d50
push ecx
mov dword [esp], edi
lea ecx, [ebp - 0xb0]
push ecx
push 0
push 2
mov edx, eax
mov ecx, str.ConfigSettingsTable
call fcn.1006bd10
add esp, 0x10
test al, al
je case.default.0x1011267a
call fcn.1006fed0
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Config
call fcn.100fdfa0
mov edi, dword [0x1029b784]
test al, al
je 0x1011380f
push 0
mov edx, 1
mov ecx, str.Configs_folder
call fcn.100fed20
mov esi, dword [sym.imp.SHELL32.dll_ShellExecuteA]
add esp, 4
test al, al
je 0x10112725
push 1
push 0
push 0
mov ecx, 0x102a5d70
call fcn.1006bb20
push eax
push 0
push 0
call esi
push 0
mov edx, 0xa
mov ecx, str.Visuals_folder
call fcn.100fed20
add esp, 4
test al, al
je 0x10112754
push 1
push 0
push 0
mov ecx, 0x102a5d88
call fcn.1006bb20
push eax
push 0
push 0
call esi
call fcn.100736c0
movss xmm2, dword [0x1029d6a0]
lea ecx, [ebp - 0x38]
movaps xmm3, xmm0
mov dword [ebp - 0xa8], str.GENERAL
mulss xmm3, dword [0x10285978]
lea esi, [ebp - 0xa8]
mov dword [ebp - 0xa4], str.VISUALS
lea edx, [ebp - 0xa0]
addss xmm3, dword [0x10285a08]
call fcn.1004fac0
sub esp, 8
movss xmm1, dword [eax + 4]
mov eax, esp
sub esp, 8
mov dword [eax], 0x40c00000
movss dword [eax + 4], xmm1
mov eax, esp
sub esp, 0xc
mov dword [ebp - 0x24], esp
movss dword [eax], xmm3
movss dword [eax + 4], xmm2
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
sub esp, 0xc
mov dword [ebp - 4], 0
mov ecx, esp
mov byte [ebp - 0x12], 0
push ecx
push edx
push esi
call fcn.100a8ca0
mov dl, byte [ebp - 0x12]
mov ecx, 0x1029d67c
mov dword [ebp - 4], 0xffffffff
call fcn.100fe3c0
mov eax, dword [0x1029d67c]
add esp, 0x28
sub eax, 0
je 0x10112fdf
sub eax, 1
jne 0x1011380f
mov ecx, dword fs:[0x2c]
mov eax, dword [0x102a6114]
mov ecx, dword [ecx + edi*4]
cmp eax, dword [ecx + 4]
jle 0x10112868
push 0x102a6114
call fcn.1016f60a
add esp, 4
cmp dword [0x102a6114], 0xffffffff
jne 0x10112868
push 0x1017f160
call fcn.1016f973
add esp, 4
push 0x102a6114
call fcn.1016f5b9
add esp, 4
push 0
push 9
sub esp, 0xc
mov edx, 0x102984f0
mov eax, esp
mov ecx, str.Config_name
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
call fcn.10102ec0
add esp, 0x14
mov edx, 0x1c
mov ecx, str.Create
push 0
call fcn.100fed20
add esp, 4
test al, al
je 0x10112956
cmp dword [0x10298500], 0
jbe 0x10112956
push 0x1027d110
mov edx, 0x102a5d88
lea ecx, [ebp - 0x60]
call fcn.100d8d00
add esp, 4
push 0x102984f0
mov edx, eax
mov dword [ebp - 4], 0x15
lea ecx, [ebp - 0x88]
call fcn.100f3260
push eax
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x16
call fcn.100f4620
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x17
call fcn.100e7b50
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x12], al
call fcn.100f31c0
lea ecx, [ebp - 0x88]
call fcn.10090cb0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10090cb0
cmp byte [ebp - 0x12], 0
jne 0x1011294c
push 1
push 0x102984f0
mov ecx, 0x102a5d40
call fcn.100ee920
mov ecx, 0x102984f0
call fcn.10091850
push ecx
push 0x102a5d88
lea ecx, [ebp - 0xa0]
call fcn.100f4620
lea eax, [ebp - 0xa0]
mov dword [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0xb0]
call fcn.10108a90
lea ecx, [ebp - 0xa0]
call fcn.100f31c0
lea eax, [ebp - 0xb0]
push eax
lea ecx, [ebp - 0x28]
call fcn.10119050
mov eax, ecx
lea ecx, [ebp - 0xa8]
push eax
call fcn.10108cd0
lea ecx, [ebp - 0x28]
call fcn.10108ca0
sub esp, 8
lea eax, [ebp - 0xb0]
mov ecx, esp
push eax
call fcn.10119050
lea ecx, [ebp - 0xb8]
call fcn.10108d00
add esp, 8
mov byte [ebp - 4], 0x1c
mov esi, dword [ebp - 0xa8]
cmp esi, dword [ebp - 0xb8]
je 0x10112fbe
mov edi, 0x1029d9ac
nop word [eax + eax]
mov ecx, esi
call fcn.101086e0
test al, al
je 0x10112a44
push ecx
push 0x102a5da0
lea ecx, [ebp - 0xa0]
call fcn.100f4620
mov byte [ebp - 4], 0x1d
lea ecx, [esi + 0x20]
mov eax, dword [ebp - 0x18]
or eax, 0x10
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x108]
push eax
call fcn.101085b0
or dword [ebp - 0x18], 0x20
lea edx, [ebp - 0xa0]
mov ecx, eax
call fcn.10108650
mov byte [ebp - 0x11], 0
test al, al
jne 0x10112a48
mov byte [ebp - 0x11], 1
mov eax, dword [ebp - 0x18]
test al, 0x20
je 0x10112a63
and eax, 0xffffffdf
lea ecx, [ebp - 0x108]
mov dword [ebp - 0x18], eax
call fcn.100f31c0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 4], 0x1c
test al, 0x10
je 0x10112a7f
and eax, 0xffffffef
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x18], eax
call fcn.100f31c0
cmp byte [ebp - 0x11], 0
jne 0x10112f9b
lea eax, [ebp - 0x108]
lea ecx, [esi + 0x20]
push eax
call fcn.10108550
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x1e
push ecx
mov ecx, eax
call fcn.100e7330
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x20
call fcn.100f31c0
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x88]
call fcn.10091810
lea ecx, [ebp - 0x88]
mov edx, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10091810
push edx
lea ecx, [ebp - 0x88]
mov eax, dword [eax]
sub eax, dword [0x102a5db0]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.100d9dc0
lea ecx, [ebp - 0x50]
call fcn.1004fac0
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x110], 0x41600000
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x30], xmm0
addss xmm0, dword [0x10285a90]
movss dword [ebp - 0x10c], xmm0
call fcn.1004fb00
lea ecx, [ebp - 0x88]
call fcn.1006bb20
mov esi, eax
mov ecx, 0x102a5d40
lea eax, [ebp - 0xa0]
push eax
call fcn.10108d50
mov edx, eax
mov byte [ebp - 4], 0x21
lea ecx, [ebp - 0x88]
call fcn.10093fd0
test al, al
mov ecx, 0x1029d99c
push esi
cmovne ecx, edi
push ecx
call fcn.10074a20
add esp, 8
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa0]
call fcn.10090cb0
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x118]
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285ac8]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x30]
addss xmm0, dword [0x10285a88]
movss dword [ebp - 0x1c], xmm0
movss dword [ebp - 0x114], xmm0
call fcn.1004fb00
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
push ecx
mov dword [esp], 0xbf800000
movaps xmm1, xmm0
call fcn.1003c750
mov ecx, 0x1027fb00
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x10112c30
push 0x1d
push str.Confirmation_DeleteVisual
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x22
call fcn.1006bb20
mov ecx, eax
call fcn.10050e40
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x20
call fcn.10090cb0
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x120]
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285b0c]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0x11c], xmm0
call fcn.1004fb00
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
mov ecx, 0x1027fc34
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x10112d23
lea eax, [ebp - 0xa0]
mov ecx, 0x102a5d40
push eax
call fcn.10108d50
mov edx, eax
lea ecx, [ebp - 0x88]
call fcn.10093fd0
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x12], al
call fcn.10090cb0
cmp byte [ebp - 0x12], 0
jne 0x10112d10
push 0x1b
push str.Confirmation_SaveVisual
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0x138]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x23
call fcn.1006bb20
mov ecx, eax
call fcn.10050e40
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0x20
call fcn.10090cb0
jmp 0x10112d23
push 1
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100ee920
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x6c]
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285b40]
movss dword [ebp - 0x6c], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0x68], xmm0
call fcn.1004fb00
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
mov ecx, 0x1027fc10
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x10112d99
push 1
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100ef6b0
push 0x1b
push str.Confirmation_SaveVisual
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
push 0x10041
mov ecx, eax
mov byte [ebp - 4], 0x24
call fcn.1006bb20
mov ecx, eax
call fcn.100515a0
add esp, 4
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x20
call fcn.10090cb0
cmp byte [ebp - 0x12], 0
je 0x10112e7a
push 0x24
push str.Do_you_really_want_to_override__
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x25
call fcn.1006bb20
push eax
call fcn.10074950
add esp, 4
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa0]
call fcn.10090cb0
push 0
mov edx, 1
mov ecx, str.Yes__override
call fcn.100fed20
add esp, 4
test al, al
je 0x10112e58
push 1
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100ee920
call fcn.100513b0
push 0
mov edx, 0xa
mov ecx, 0x1027cc0c
call fcn.100fed20
add esp, 4
test al, al
je 0x10112e75
call fcn.100513b0
call fcn.100516f0
push 0x1d
push str.Confirmation_DeleteVisual
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
push 0x10041
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.1006bb20
mov ecx, eax
call fcn.100515a0
add esp, 4
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 0x20
call fcn.10090cb0
cmp byte [ebp - 0x12], 0
je 0x10112f59
push 0x22
push str.Do_you_really_want_to_delete__
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x27
call fcn.1006bb20
push eax
call fcn.10074950
add esp, 4
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0xa0]
call fcn.10090cb0
push 0
mov edx, 1
mov ecx, str.Yes__delete
call fcn.100fed20
add esp, 4
test al, al
je 0x10112f37
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100f2180
call fcn.100513b0
push 0
mov edx, 0xa
mov ecx, 0x1027cc0c
call fcn.100fed20
add esp, 4
test al, al
je 0x10112f54
call fcn.100513b0
call fcn.100516f0
movss xmm0, dword [ebp - 0x30]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x40c00000
movss dword [ebp - 0x34], xmm0
call fcn.1004fb00
sub esp, 8
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0x41e00000
call fcn.100fd0a0
add esp, 8
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x88]
call fcn.10090cb0
lea ecx, [ebp - 0xa8]
call fcn.10108bf0
mov esi, dword [ebp - 0xa8]
cmp esi, dword [ebp - 0xb8]
jne 0x101129f0
mov edi, dword [0x1029b784]
lea ecx, [ebp - 0xb8]
call fcn.10108ca0
lea ecx, [ebp - 0xa8]
call fcn.10108ca0
lea ecx, [ebp - 0xb0]
jmp 0x10113803
mov ecx, dword fs:[0x2c]
mov eax, dword [0x102a6120]
mov ecx, dword [ecx + edi*4]
cmp eax, dword [ecx + 4]
jle 0x10113026
push 0x102a6120
call fcn.1016f60a
add esp, 4
cmp dword [0x102a6120], 0xffffffff
jne 0x10113026
push 0x1017f1c0
call fcn.1016f973
add esp, 4
push 0x102a6120
call fcn.1016f5b9
add esp, 4
push 0
push 9
sub esp, 0xc
mov edx, 0x10298638
mov eax, esp
mov ecx, str.Config_name
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
call fcn.10102ec0
add esp, 0x14
mov edx, 0x1c
mov ecx, str.Create
push 0
call fcn.100fed20
add esp, 4
test al, al
je 0x1011311a
cmp dword [0x10298648], 0
jbe 0x1011311a
push 0x1027d110
mov edx, 0x102a5d70
lea ecx, [ebp - 0x108]
call fcn.100d8d00
add esp, 4
push 0x10298638
mov edx, eax
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x138]
call fcn.100f3260
push eax
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 2
call fcn.100f4620
lea ecx, [ebp - 0xa0]
mov byte [ebp - 4], 3
call fcn.100e7b50
lea ecx, [ebp - 0xa0]
mov byte [ebp - 0x12], al
call fcn.100f31c0
lea ecx, [ebp - 0x138]
call fcn.10090cb0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.10090cb0
cmp byte [ebp - 0x12], 0
jne 0x10113110
push 1
push 0x10298638
mov ecx, 0x102a5d40
call fcn.100eb740
mov ecx, 0x10298638
call fcn.10091850
push ecx
push 0x102a5d70
lea ecx, [ebp - 0xa0]
call fcn.100f4620
lea eax, [ebp - 0xa0]
mov dword [ebp - 4], 4
push eax
lea ecx, [ebp - 0xb8]
call fcn.10108a90
lea ecx, [ebp - 0xa0]
call fcn.100f31c0
lea eax, [ebp - 0xb8]
push eax
lea ecx, [ebp - 0x38]
call fcn.10119050
mov eax, ecx
lea ecx, [ebp - 0xa8]
push eax
call fcn.10108cd0
lea ecx, [ebp - 0x38]
call fcn.10108ca0
sub esp, 8
lea eax, [ebp - 0xb8]
mov ecx, esp
push eax
call fcn.10119050
lea ecx, [ebp - 0xb0]
call fcn.10108d00
add esp, 8
mov byte [ebp - 4], 8
mov esi, dword [ebp - 0xa8]
cmp esi, dword [ebp - 0xb0]
je 0x101137e7
mov edi, 0x1029d9ac
nop
mov ecx, esi
call fcn.101086e0
test al, al
je 0x10113204
push ecx
push 0x102a5da0
lea ecx, [ebp - 0xa0]
call fcn.100f4620
mov byte [ebp - 4], 9
lea ecx, [esi + 0x20]
mov eax, dword [ebp - 0x18]
or eax, 1
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x138]
push eax
call fcn.101085b0
or dword [ebp - 0x18], 2
lea edx, [ebp - 0xa0]
mov ecx, eax
call fcn.10108650
mov byte [ebp - 0x11], 0
test al, al
jne 0x10113208
mov byte [ebp - 0x11], 1
mov eax, dword [ebp - 0x18]
test al, 2
je 0x10113223
and eax, 0xfffffffd
lea ecx, [ebp - 0x138]
mov dword [ebp - 0x18], eax
call fcn.100f31c0
mov eax, dword [ebp - 0x18]
mov dword [ebp - 4], 8
test al, 1
je 0x1011323f
and eax, 0xfffffffe
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x18], eax
call fcn.100f31c0
cmp byte [ebp - 0x11], 0
jne 0x101137c4
lea eax, [ebp - 0x138]
lea ecx, [esi + 0x20]
push eax
call fcn.10108550
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0xa
push ecx
mov ecx, eax
call fcn.100e7330
lea ecx, [ebp - 0x138]
mov byte [ebp - 4], 0xc
call fcn.100f31c0
lea eax, [ebp - 0x24]
push eax
lea ecx, [ebp - 0x88]
call fcn.10091810
lea ecx, [ebp - 0x88]
mov edx, dword [eax]
lea eax, [ebp - 0x64]
push eax
call fcn.10091810
push edx
lea ecx, [ebp - 0x88]
mov eax, dword [eax]
sub eax, dword [0x102a5db0]
push eax
lea eax, [ebp - 0x70]
push eax
call fcn.100d9dc0
lea ecx, [ebp - 0x50]
call fcn.1004fac0
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x41600000
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x30], xmm0
addss xmm0, dword [0x10285a90]
movss dword [ebp - 0x34], xmm0
call fcn.1004fb00
lea ecx, [ebp - 0x88]
call fcn.1006bb20
mov esi, eax
mov ecx, 0x102a5d40
lea eax, [ebp - 0x108]
push eax
call fcn.100a03d0
mov edx, eax
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x88]
call fcn.10093fd0
test al, al
mov ecx, 0x1029d99c
push esi
cmovne ecx, edi
push ecx
call fcn.10074a20
add esp, 8
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x108]
call fcn.10090cb0
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x6c]
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285ac8]
movss dword [ebp - 0x6c], xmm0
movss xmm0, dword [ebp - 0x30]
addss xmm0, dword [0x10285a88]
movss dword [ebp - 0x1c], xmm0
movss dword [ebp - 0x68], xmm0
call fcn.1004fb00
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
push ecx
mov dword [esp], 0xbf800000
movaps xmm1, xmm0
call fcn.1003c750
mov ecx, 0x1027fb00
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x101133de
push 0x1d
push str.Confirmation_DeleteConfig
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0x108]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0xe
call fcn.1006bb20
mov ecx, eax
call fcn.10050e40
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xc
call fcn.10090cb0
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x120]
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285b0c]
movss dword [ebp - 0x120], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0x11c], xmm0
call fcn.1004fb00
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
mov ecx, 0x1027fc34
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x1011353a
lea eax, [ebp - 0xa0]
mov ecx, 0x102a5d40
push eax
call fcn.100a03d0
mov byte [ebp - 4], 0xf
mov edx, eax
mov ecx, dword [ebp - 0x18]
or ecx, 4
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x2c], ecx
lea ecx, [ebp - 0x88]
call fcn.10093fd0
test al, al
je 0x101134a6
lea eax, [ebp - 0x108]
mov ecx, 0x102a5d40
push eax
call fcn.10108d50
mov ecx, dword [ebp - 0x18]
or ecx, 8
mov dword [ebp - 0x18], ecx
cmp dword [eax + 0x10], 0
jne 0x101134a9
mov byte [ebp - 0x11], 0
jmp 0x101134ad
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 0x11], 1
test cl, 8
je 0x101134c6
and ecx, 0xfffffff7
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0x108]
call fcn.10090cb0
mov ecx, dword [ebp - 0x18]
mov dword [ebp - 4], 0xc
test cl, 4
je 0x101134e3
and ecx, 0xfffffffb
mov dword [ebp - 0x18], ecx
lea ecx, [ebp - 0xa0]
call fcn.10090cb0
cmp byte [ebp - 0x11], 0
je 0x10113527
push 0x1b
push str.Confirmation_SaveConfig
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0xd0]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x10
call fcn.1006bb20
mov ecx, eax
call fcn.10050e40
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0xc
call fcn.10090cb0
jmp 0x1011353a
push 1
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100eb740
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x118]
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285b40]
movss dword [ebp - 0x118], xmm0
movss xmm0, dword [ebp - 0x1c]
movss dword [ebp - 0x114], xmm0
call fcn.1004fb00
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
mov ecx, 0x1027fc10
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x101135b9
push 1
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100ec950
push 0x1b
push str.Confirmation_SaveConfig
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0x108]
call fcn.100e0310
add esp, 8
push 0x10041
mov ecx, eax
mov byte [ebp - 4], 0x11
call fcn.1006bb20
mov ecx, eax
call fcn.100515a0
add esp, 4
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xc
call fcn.10090cb0
cmp byte [ebp - 0x12], 0
je 0x1011369a
push 0x24
push str.Do_you_really_want_to_override__
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0x108]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x12
call fcn.1006bb20
push eax
call fcn.10074950
add esp, 4
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x108]
call fcn.10090cb0
push 0
mov edx, 1
mov ecx, str.Yes__override
call fcn.100fed20
add esp, 4
test al, al
je 0x10113678
push 1
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100eb740
call fcn.100513b0
push 0
mov edx, 0xa
mov ecx, 0x1027cc0c
call fcn.100fed20
add esp, 4
test al, al
je 0x10113695
call fcn.100513b0
call fcn.100516f0
push 0x1d
push str.Confirmation_DeleteConfig
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0x108]
call fcn.100e0310
add esp, 8
push 0x10041
mov ecx, eax
mov byte [ebp - 4], 0x13
call fcn.1006bb20
mov ecx, eax
call fcn.100515a0
add esp, 4
mov byte [ebp - 0x12], al
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0xc
call fcn.10090cb0
cmp byte [ebp - 0x12], 0
je 0x10113779
push 0x22
push str.Do_you_really_want_to_delete__
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0x108]
call fcn.100e0310
add esp, 8
mov ecx, eax
mov byte [ebp - 4], 0x14
call fcn.1006bb20
push eax
call fcn.10074950
add esp, 4
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x108]
call fcn.10090cb0
push 0
mov edx, 1
mov ecx, str.Yes__delete
call fcn.100fed20
add esp, 4
test al, al
je 0x10113757
lea eax, [ebp - 0x88]
mov ecx, 0x102a5d40
push eax
call fcn.100f1710
call fcn.100513b0
push 0
mov edx, 0xa
mov ecx, 0x1027cc0c
call fcn.100fed20
add esp, 4
test al, al
je 0x10113774
call fcn.100513b0
call fcn.100516f0
movss xmm0, dword [ebp - 0x30]
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x110], 0x40c00000
movss dword [ebp - 0x10c], xmm0
call fcn.1004fb00
sub esp, 8
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0x41e00000
call fcn.100fd0a0
add esp, 8
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x88]
call fcn.10090cb0
lea ecx, [ebp - 0xa8]
call fcn.10108bf0
mov esi, dword [ebp - 0xa8]
cmp esi, dword [ebp - 0xb0]
jne 0x101131b0
mov edi, dword [0x1029b784]
lea ecx, [ebp - 0xb0]
call fcn.10108ca0
lea ecx, [ebp - 0xa8]
call fcn.10108ca0
lea ecx, [ebp - 0xb8]
mov dword [ebp - 4], 0xffffffff
call fcn.10108ca0
call fcn.100fe340
mov esi, dword [0x1029bac8]
mov dword [ebp - 0x5c], 0
mov eax, dword [esi + 0x3e58]
lea ecx, [esi + 0x476c]
movss xmm1, dword [eax + 0xf0]
subss xmm1, dword [eax + 0x14]
addss xmm1, dword [eax + 0x78]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e58]
addss xmm1, dword [0x10285a84]
movss xmm0, dword [eax + 0x14]
subss xmm0, dword [eax + 0x78]
mov byte [eax + 0x131], 1
addss xmm0, xmm1
movss dword [eax + 0xf0], xmm0
lea eax, [ebp - 0x5c]
movups xmm0, xmmword [esi + 0x3860]
push eax
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
movups xmm0, xmmword [0x1029d99c]
push str.06:24:26
push str.Apr_18_2024
push str.Built____s___s
movups xmmword [esi + 0x3860], xmm0
call fcn.10074950
add esp, 0xc
mov ecx, 1
call fcn.10040340
call fcn.1006fed0
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Debug
call fcn.100fdfa0
test al, al
je 0x10113aa5
mov dl, 1
mov ecx, 0x102a33b0
call fcn.1011c670
push 0
lea edx, [ebp - 0x11]
mov byte [ebp - 0x11], al
mov ecx, str.Debug_info
call fcn.100ff1d0
mov dl, byte [ebp - 0x11]
add esp, 4
mov ecx, 0x102a33b0
call fcn.1011c920
mov dl, 1
mov ecx, 0x102a3320
call fcn.1011c670
push 1
lea edx, [ebp - 0x11]
mov byte [ebp - 0x11], al
mov ecx, str.Debug_logging
call fcn.100ff1d0
mov dl, byte [ebp - 0x11]
add esp, 4
mov ecx, 0x102a3320
call fcn.1011c920
mov edx, dword [0x1029d090]
mov ecx, str.Allow_secure_servers
push 0
call fcn.100ff1d0
mov edx, dword [0x1029d018]
add esp, 4
add edx, 0x33c
je 0x10113963
push 1
mov ecx, str.Pending_ping_refresh
call fcn.100ff1d0
add esp, 4
mov dl, 1
mov ecx, 0x102a3368
call fcn.1011c670
push 0
lea edx, [ebp - 0x11]
mov byte [ebp - 0x11], al
mov ecx, str.Show_server_hitboxes
call fcn.100ff1d0
mov dl, byte [ebp - 0x11]
add esp, 4
mov ecx, 0x102a3368
call fcn.1011c920
xor ecx, ecx
call fcn.10042230
test al, al
je 0x101139a9
push str.localhost_servers
call fcn.10050ca0
add esp, 4
mov dl, 1
mov ecx, 0x102a32d8
call fcn.1011c670
push 1
lea edx, [ebp - 0x11]
mov byte [ebp - 0x11], al
mov ecx, str.Anti_aim_lines
call fcn.100ff1d0
mov dl, byte [ebp - 0x11]
add esp, 4
mov ecx, 0x102a32d8
call fcn.1011c920
mov eax, dword fs:[0x2c]
mov ecx, dword [eax + edi*4]
mov eax, dword [0x102a6104]
cmp eax, dword [ecx + 4]
jle 0x10113a1d
push 0x102a6104
call fcn.1016f60a
add esp, 4
cmp dword [0x102a6104], 0xffffffff
jne 0x10113a1d
push 0x1017f100
call fcn.1016f973
add esp, 4
push 0x102a6104
call fcn.1016f5b9
add esp, 4
push 0
push 1
sub esp, 0xc
mov edx, str.ping_circle
mov eax, esp
mov ecx, str.Particle_name
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
call fcn.10102ec0
mov esi, dword [0x10299020]
add esp, 0x14
mov edx, 0x1a
mov ecx, str.Dispatch
push 0
call fcn.100fed20
add esp, 4
test al, al
je 0x10113aa5
test esi, esi
je 0x10113aa5
mov ecx, esi
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x54], 0
call fcn.100b21d0
mov ecx, str.ping_circle
mov edx, eax
call fcn.1006bb20
push ecx
lea ecx, [ebp - 0x54]
push ecx
mov ecx, eax
call fcn.100fce80
add esp, 8
call fcn.100fe340
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Extra
call fcn.100fdfa0
test al, al
je 0x101163c9
push 0
mov edx, 1
mov ecx, str.cl_fullupdate
call fcn.100fed20
add esp, 4
test al, al
je 0x10113ae8
push str.cl_fullupdate
call fcn.100de1f0
push 0
mov edx, 0xa
mov ecx, str.retry
call fcn.100fed20
add esp, 4
test al, al
je 0x10113b0a
push str.retry
call fcn.100de1f0
push 0
mov edx, 1
mov ecx, str.Console
call fcn.100fed20
add esp, 4
test al, al
je 0x10113b2c
push str.showconsole
call fcn.100de1f0
push 0
mov edx, 0xa
mov ecx, str.Fix_Chams
call fcn.100fed20
add esp, 4
test al, al
je 0x10113b4e
mov ecx, 0x1029d618
call fcn.1014a1c0
mov ecx, dword [0x1029ce1c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x6c]
call eax
test al, al
jne 0x10113cb5
push 0
mov edx, 1
mov ecx, str.Unlock_achievements
call fcn.100fed20
add esp, 4
test al, al
je 0x10113b85
mov ecx, str.Unlock_achievements_
call fcn.10050e40
push 0
mov edx, 0xa
mov ecx, str.Lock_achievements
call fcn.100fed20
add esp, 4
test al, al
je 0x10113ba7
mov ecx, str.Lock_achievements_
call fcn.10050e40
push 0x40
mov ecx, str.Unlock_achievements_
call fcn.100515a0
add esp, 4
test al, al
je 0x10113c2e
push str.Do_you_really_want_to_unlock_all_achievements_
call fcn.10074950
add esp, 4
call fcn.10076e00
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x43160000
mov ecx, str.Yes__unlock
mov dword [ebp - 0x34], 0
call fcn.10075460
test al, al
je 0x10113bf5
call fcn.10130e50
call fcn.100513b0
movss xmm1, dword [0x10285ca4]
xorps xmm0, xmm0
call fcn.1004fa10
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x43160000
mov ecx, 0x1027cc0c
mov dword [ebp - 0x34], 0
call fcn.10075460
test al, al
je 0x10113c29
call fcn.100513b0
call fcn.100516f0
push 0x40
mov ecx, str.Lock_achievements_
call fcn.100515a0
add esp, 4
test al, al
je 0x10113cb5
push str.Do_you_really_want_to_lock_all_achievements_
call fcn.10074950
add esp, 4
call fcn.10076e00
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x43160000
mov ecx, str.Yes__lock
mov dword [ebp - 0x34], 0
call fcn.10075460
test al, al
je 0x10113c7c
call fcn.10130ec0
call fcn.100513b0
movss xmm1, dword [0x10285ca4]
xorps xmm0, xmm0
call fcn.1004fa10
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x43160000
mov ecx, 0x1027cc0c
mov dword [ebp - 0x34], 0
call fcn.10075460
test al, al
je 0x10113cb0
call fcn.100513b0
call fcn.100516f0
cmp byte [0x102a33d1], 0
je 0x101163c9
push 0
mov edx, 1
mov ecx, str.Reveal_bullet_lines
call fcn.100fed20
add esp, 4
test al, al
je 0x10113cdf
call fcn.10152fe0
push 0
mov edx, 0xa
mov ecx, str.Reveal_prediction_lines
call fcn.100fed20
add esp, 4
test al, al
je 0x10113cfc
call fcn.10153020
push 0
mov edx, 1
mov ecx, str.Reveal_boxes
call fcn.100fed20
add esp, 4
test al, al
je 0x10113d19
call fcn.10153060
push 0
mov edx, 0xa
mov ecx, str.Print_hashes
call fcn.100fed20
add esp, 4
test al, al
je 0x101163c9
call fcn.1016ee00
jmp 0x101163c9
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Settings
call fcn.100fdfa0
test al, al
je 0x10113db3
mov dl, 1
mov ecx, 0x1029fa48
call fcn.1011c670
push 0
lea edx, [ebp - 0x11]
mov byte [ebp - 0x11], al
mov ecx, str.Show_bind_window
call fcn.100ff1d0
mov dl, byte [ebp - 0x11]
add esp, 4
mov ecx, 0x1029fa48
call fcn.1011c920
mov dl, 1
mov ecx, 0x1029fce0
call fcn.1011c670
push 1
lea edx, [ebp - 0x11]
mov byte [ebp - 0x11], al
mov ecx, str.Menu_shows_binds
call fcn.100ff1d0
mov dl, byte [ebp - 0x11]
add esp, 4
mov ecx, 0x1029fce0
call fcn.1011c920
call fcn.100fe340
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Conditions
call fcn.100fdfa0
test al, al
je 0x10114750
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1029b784]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x102a613c]
cmp eax, dword [esi + 4]
jle 0x10113e20
push 0x102a613c
call fcn.1016f60a
add esp, 4
cmp dword [0x102a613c], 0xffffffff
jne 0x10113e20
push 0x1017f0a0
call fcn.1016f973
add esp, 4
push 0x102a613c
call fcn.1016f5b9
add esp, 4
mov eax, dword [0x102a6174]
cmp eax, dword [esi + 4]
jle 0x10113e5d
push 0x102a6174
call fcn.1016f60a
add esp, 4
cmp dword [0x102a6174], 0xffffffff
jne 0x10113e5d
push 0x1017f040
call fcn.1016f973
add esp, 4
push 0x102a6174
call fcn.1016f5b9
add esp, 4
mov eax, dword [0x1029bac8]
push ecx
push str.ConditionsTable
mov dword [ebp - 0x38], edi
mov ecx, dword [eax + 0x3e58]
mov dword [ebp - 0x34], edi
call fcn.10041d50
push ecx
mov dword [esp], edi
lea ecx, [ebp - 0x38]
push ecx
push 0
push 2
mov edx, eax
mov ecx, str.ConditionsTable
call fcn.1006bd10
add esp, 0x10
test al, al
je 0x1011463b
call fcn.1006fed0
lea ecx, [ebp - 0x50]
call fcn.1004fac0
lea ecx, [ebp - 0x6c]
movss xmm1, dword [eax]
subss xmm1, dword [0x10285a84]
call fcn.1004fac0
lea ecx, [ebp - 0x38]
movss dword [ebp - 0x38], xmm1
movss xmm0, dword [eax + 4]
subss xmm0, dword [0x10285a84]
movss dword [ebp - 0x34], xmm0
call fcn.1004fb00
call fcn.100736c0
addss xmm0, dword [0x10285a68]
push 0x10098
push ecx
lea edx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x42d00000
mov ecx, str.ConditionsTableTable1
movss dword [ebp - 0x38], xmm0
call fcn.10045c70
add esp, 8
test al, al
je 0x1011416d
push 0
push 9
sub esp, 0xc
mov edx, 0x10298620
mov eax, esp
mov ecx, str.Name
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
call fcn.10102ec0
add esp, 0x14
mov edx, 0x10298564
mov ecx, str.Parent
push 0
push 0xa
sub esp, 0xc
mov eax, esp
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
call fcn.10102ec0
add esp, 0x14
mov dword [ebp - 0x54], 0x1027d0c0
mov dword [ebp - 0x50], str.Class
lea esi, [ebp - 0x54]
mov dword [ebp - 0x4c], str.Weapon_type
lea edx, [ebp - 0x48]
push 0
push 1
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x24], esp
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
sub esp, 0xc
mov dword [ebp - 4], 0x28
mov ecx, esp
push ecx
push edx
push esi
call fcn.100a8ca0
mov edx, 0x10298548
mov dword [ebp - 4], 0xffffffff
mov ecx, str.Type
call fcn.10101ae0
mov eax, dword [0x10298548]
add esp, 0x20
sub eax, 0
je 0x101140f2
sub eax, 1
je 0x1011403d
sub eax, 1
jne 0x1011416d
mov eax, dword [0x1029854c]
lea esi, [ebp - 0x54]
mov ecx, 2
mov dword [ebp - 0x54], str.Hitscan
cmp eax, ecx
mov dword [ebp - 0x50], str.Projectile
push 0
cmovg eax, ecx
mov dword [ebp - 0x4c], str.Melee
mov dword [0x1029854c], eax
lea edx, [ebp - 0x48]
push ecx
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x24], esp
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
sub esp, 0xc
mov dword [ebp - 4], 0x2b
mov ecx, esp
push ecx
push edx
push esi
call fcn.100a8ca0
mov ecx, str.Weapon_type
jmp 0x10114159
mov eax, dword [0x1029854c]
lea esi, [ebp - 0xdc]
mov ecx, 8
mov dword [ebp - 0xdc], 0x1027ff98
cmp eax, ecx
mov dword [ebp - 0xd8], 0x1027ff7c
push 0
cmovg eax, ecx
mov dword [ebp - 0xd4], 0x1027ff84
mov dword [0x1029854c], eax
lea edx, [ebp - 0xb8]
push 2
sub esp, 0xc
mov dword [ebp - 0xd0], 0x1027ffb4
mov eax, esp
mov dword [ebp - 0xcc], 0x1027ffbc
mov dword [ebp - 0xc8], 0x1027ffa0
mov dword [ebp - 0xc4], 0x1027ffac
mov dword [ebp - 0xc0], 0x1027ffec
mov dword [ebp - 0xbc], 0x1027fff4
mov dword [ebp - 0x24], esp
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
sub esp, 0xc
mov dword [ebp - 4], 0x2a
mov ecx, esp
push ecx
push edx
push esi
call fcn.100a8ca0
mov ecx, str.Class
jmp 0x10114159
mov eax, dword [0x1029854c]
lea esi, [ebp - 0x54]
mov ecx, 2
mov dword [ebp - 0x54], str.Hold
cmp eax, ecx
mov dword [ebp - 0x50], str.Toggle
push 0
cmovg eax, ecx
mov dword [ebp - 0x4c], str.Double_click
mov dword [0x1029854c], eax
lea edx, [ebp - 0x48]
push ecx
sub esp, 0xc
mov eax, esp
mov dword [ebp - 0x24], esp
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
sub esp, 0xc
mov dword [ebp - 4], 0x29
mov ecx, esp
push ecx
push edx
push esi
call fcn.100a8ca0
mov ecx, str.Behavior
mov edx, 0x1029854c
mov dword [ebp - 4], 0xffffffff
call fcn.10101ae0
add esp, 0x20
call fcn.10045cc0
call fcn.1006fed0
lea ecx, [ebp - 0x50]
call fcn.1004fac0
lea ecx, [ebp - 0x6c]
movss xmm1, dword [eax]
subss xmm1, dword [0x10285a68]
call fcn.1004fac0
lea ecx, [ebp - 0x38]
movss dword [ebp - 0x38], xmm1
movss xmm0, dword [eax + 4]
subss xmm0, dword [0x10285a84]
movss dword [ebp - 0x34], xmm0
call fcn.1004fb00
call fcn.100736c0
addss xmm0, dword [0x10285a84]
push 0x10098
push ecx
lea edx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x42d00000
mov ecx, str.ConditionsTableTable2
movss dword [ebp - 0x38], xmm0
call fcn.10045c70
add esp, 8
test al, al
je 0x10114631
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x41000000
mov dword [ebp - 0x34], 0x41c00000
call fcn.1004fb00
push 0
mov edx, 0x10298556
mov ecx, str.Visible
call fcn.100ff1d0
add esp, 4
mov edx, 0x10298554
mov ecx, 0x1027d0c4
push 1
call fcn.100ff1d0
add esp, 4
cmp dword [0x10298548], 0
jne 0x1011425c
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x41000000
mov dword [ebp - 0x34], 0x42600000
call fcn.1004fb00
push 0xffffffffffffffa0
push 0x10
mov edx, 0x10298550
mov ecx, 0x1027d0c0
call fcn.10107620
add esp, 8
cmp dword [0x10298574], 0
mov byte [ebp - 0x12], 0
mov byte [ebp - 0x11], 1
je 0x1011427f
push 0x10298564
mov ecx, 0x10299384
call fcn.100e42f0
mov byte [ebp - 0x11], al
mov ecx, dword [0x1029bac8]
mov dword [ebp - 0x34], 0x42800000
mov ecx, dword [ecx + 0x3e58]
movss xmm0, dword [ecx + 0x1c]
lea ecx, [ebp - 0x38]
subss xmm0, dword [0x10285b64]
movss dword [ebp - 0x38], xmm0
call fcn.1004fb00
mov edx, 0x1029d97c
mov ecx, 0x15
call fcn.100402f0
mov edx, 0x1029d97c
mov ecx, 0x17
call fcn.100402f0
cmp dword [0x10298630], 0
je 0x10114345
mov ecx, 0x10298620
call fcn.1006bb20
mov ecx, eax
call fcn.100de1a0
mov edx, 0x811c9dc5
mov ecx, 0x102732c8
mov esi, eax
call fcn.100de180
cmp esi, eax
je 0x10114345
cmp byte [ebp - 0x11], 0
je 0x10114345
cmp dword [0x10298548], 0
mov eax, 1
cmove eax, dword [0x10298550]
test eax, eax
je 0x10114345
mov edx, 0x1029d98c
mov ecx, 0x16
call fcn.100402f0
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x42200000
mov ecx, str.CreateButton
mov dword [ebp - 0x34], 0x42200000
call fcn.10075460
mov byte [ebp - 0x12], al
jmp 0x1011436f
mov edx, 0x1029d97c
mov ecx, 0x16
call fcn.100402f0
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x42200000
mov ecx, str.CreateButton
mov dword [ebp - 0x34], 0x42200000
call fcn.10075460
mov ecx, 3
call fcn.10040340
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x34], 0x42980000
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285b50]
movss dword [ebp - 0x38], xmm0
call fcn.1004fb00
cmp dword [0x10298630], 0
je 0x10114441
mov ecx, 0x10298620
call fcn.1006bb20
mov ecx, eax
call fcn.100de1a0
mov edx, 0x811c9dc5
mov ecx, 0x102732c8
mov esi, eax
call fcn.100de180
cmp esi, eax
je 0x10114441
cmp byte [ebp - 0x11], 0
je 0x10114441
cmp dword [0x10298548], 0
mov eax, 1
cmove eax, dword [0x10298550]
test eax, eax
je 0x10114441
push 0x10298620
mov ecx, 0x10299384
call fcn.100e42f0
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
mov dl, al
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
test dl, dl
mov eax, 0x1027fb08
mov ecx, 0x1027dfa0
cmove ecx, eax
xor dl, dl
call fcn.100fdc90
jmp 0x1011447e
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
mov byte [0x1029bac5], 1
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
xor dl, dl
mov ecx, 0x1027fb08
call fcn.100fdc90
mov byte [0x1029bac5], 0
mov eax, dword [0x1029bac8]
lea ecx, [ebp - 0x38]
add esp, 0x10
mov dword [ebp - 0x34], 0x42800000
mov eax, dword [eax + 0x3e58]
movss xmm0, dword [eax + 0x1c]
subss xmm0, dword [0x10285b04]
movss dword [ebp - 0x38], xmm0
call fcn.1004fb00
mov edx, 0x1029d97c
mov ecx, 0x15
call fcn.100402f0
mov edx, 0x1029d98c
mov ecx, 0x16
call fcn.100402f0
mov edx, 0x1029d97c
mov ecx, 0x17
call fcn.100402f0
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x42200000
mov ecx, str.ClearButton
mov dword [ebp - 0x34], 0x42200000
call fcn.10075460
mov ecx, 3
mov byte [ebp - 0x11], al
call fcn.10040340
mov ecx, dword [0x1029bac8]
mov dword [ebp - 0x34], 0x42980000
mov ecx, dword [ecx + 0x3e58]
movss xmm0, dword [ecx + 0x1c]
lea ecx, [ebp - 0x38]
subss xmm0, dword [0x10285ae4]
movss dword [ebp - 0x38], xmm0
call fcn.1004fb00
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
xor dl, dl
mov ecx, 0x10280020
call fcn.100fdc90
add esp, 0x10
cmp byte [ebp - 0x12], 0
je 0x1011459d
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x24], esp
push 0x10298620
call fcn.10091990
sub esp, 0x34
mov dword [ebp - 4], 0x2c
mov ecx, esp
push 0x10298548
call fcn.10119080
mov dword [ebp - 4], 0xffffffff
call fcn.100e29c0
jmp 0x101145a7
cmp byte [ebp - 0x11], 0
je 0x10114631
push 0x101a078a
mov ecx, 0x10298620
call fcn.10091870
push 0x101a078a
lea ecx, [ebp - 0xd0]
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe4], 0
mov word [ebp - 0xe0], 0
mov byte [ebp - 0xde], 1
mov word [ebp - 0xdc], 0
mov byte [ebp - 0xda], 0
mov dword [ebp - 0xd8], 0
mov byte [ebp - 0xd4], 0
call fcn.10091950
lea eax, [ebp - 0xec]
mov ecx, 0x10298548
push eax
call fcn.101190e0
lea ecx, [ebp - 0xec]
call fcn.100e2b50
call fcn.10045cc0
call fcn.1006e7e0
mov edx, 0x1029d99c
xor ecx, ecx
call fcn.100402f0
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x41600000
mov dword [ebp - 0x34], 0x43000000
call fcn.1004fb00
xor edx, edx
mov ecx, str.Conditions
call fcn.100febd0
mov ecx, 1
call fcn.10040340
lea eax, [ebp - 0x160]
mov dword [ebp - 0x38], 0x1029d668
mov dword [ebp - 0x34], eax
lea ecx, [ebp - 0x160]
lea eax, [ebp - 0x38]
push eax
call fcn.1011ebe0
mov dword [ebp - 4], 0x2d
xorps xmm0, xmm0
movups xmmword [ebp - 0x88], xmm0
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x30], 0
mov byte [ebp - 4], 0x2e
mov ecx, dword [ebp - 0x13c]
test ecx, ecx
jne 0x101146da
call dword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xbad_function_call_void_]
mov eax, dword [ecx]
lea edx, [ebp - 0x1c]
push edx
lea edx, [ebp - 0x30]
push edx
lea edx, [ebp - 0x88]
push edx
call dword [eax + 8]
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x1011472b
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10114721
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10114721
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1016f528
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x13c]
test ecx, ecx
je 0x10114750
mov edx, dword [ecx]
lea eax, [ebp - 0x160]
cmp ecx, eax
setne al
movzx eax, al
push eax
call dword [edx + 0x10]
call fcn.100fe340
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Players
call fcn.100fdfa0
test al, al
je 0x10114894
call fcn.100d22f0
test al, al
je 0x10114860
push 0x102a5ed8
lea ecx, [ebp - 0x30]
call fcn.1011bf60
mov dword [ebp - 4], 0x2f
xor ecx, ecx
mov eax, dword [0x102a5f44]
xor edi, edi
mov esi, dword [0x102a5f40]
mov dword [ebp - 0x70], ecx
mov dword [ebp - 0x2c], eax
cmp esi, eax
je 0x10114807
nop
mov eax, dword [esi + 0xc]
sub eax, 2
je 0x101147de
sub eax, 1
jne 0x101147f1
push edi
push eax
push esi
lea ecx, [ebp - 0x12]
call fcn.101172a0
mov ecx, dword [ebp - 0x70]
inc edi
jmp 0x101147f1
push ecx
push 1
push esi
lea ecx, [ebp - 0x12]
call fcn.101172a0
mov ecx, dword [ebp - 0x70]
inc ecx
mov dword [ebp - 0x70], ecx
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x101147c0
mov eax, dword [0x102a5f44]
mov esi, dword [0x102a5f40]
mov dword [ebp - 0x2c], eax
xor edx, edx
cmp edi, ecx
mov dword [ebp - 0x1c], edx
cmovl edi, ecx
cmp esi, eax
je 0x1011484b
lea ecx, [edx + 2]
mov eax, dword [esi + 0xc]
cmp eax, 3
je 0x10114843
cmp eax, 2
je 0x10114843
mov eax, edx
cdq
idiv ecx
lea ecx, [ebp - 0x12]
add eax, edi
push eax
push edx
push esi
call fcn.101172a0
mov edx, dword [ebp - 0x1c]
mov ecx, 2
inc edx
mov dword [ebp - 0x1c], edx
add esi, 0x18
cmp esi, dword [ebp - 0x2c]
jne 0x10114818
mov dword [ebp - 4], 0xffffffff
push dword [ebp - 0x30]
call dword [sym.imp.MSVCP140.dll__Mtx_unlock]
add esp, 4
jmp 0x10114894
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], 0x41900000
mov dword [ebp - 0x34], 0x421c0000
call fcn.1004fb00
push str.Not_ingame
call fcn.10074950
push ecx
mov eax, esp
mov dword [eax], edi
mov dword [eax + 4], 0x41000000
call fcn.100fd0a0
add esp, 8
call fcn.100fe340
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Tags
call fcn.100fdfa0
test al, al
je 0x1011578f
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1029b784]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x102a6138]
cmp eax, dword [ecx + 4]
jle 0x10114901
push 0x102a6138
call fcn.1016f60a
add esp, 4
cmp dword [0x102a6138], 0xffffffff
jne 0x10114901
push 0x1017efe0
call fcn.1016f973
add esp, 4
push 0x102a6138
call fcn.1016f5b9
add esp, 4
mov eax, dword [0x1029bac8]
push ecx
push str.TagTable
mov dword [ebp - 0x38], 0
mov ecx, dword [eax + 0x3e58]
mov dword [ebp - 0x34], 0
call fcn.10041d50
push ecx
mov dword [esp], 0
lea ecx, [ebp - 0x38]
push ecx
push 0
push 2
mov edx, eax
mov ecx, str.TagTable
call fcn.1006bd10
add esp, 0x10
test al, al
je 0x1011518b
call fcn.1006fed0
mov ecx, dword [0x1029bac8]
mov eax, dword [ecx + 0x3e58]
movss xmm3, dword [eax + 0xf0]
movss xmm2, dword [eax + 0xf4]
subss xmm3, dword [eax + 0x14]
subss xmm2, dword [eax + 0x18]
addss xmm3, dword [eax + 0x78]
addss xmm2, dword [eax + 0x7c]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
subss xmm3, dword [0x10285a84]
subss xmm2, dword [0x10285a84]
movss xmm1, dword [eax + 0x14]
movss xmm0, dword [eax + 0x18]
subss xmm1, dword [eax + 0x78]
subss xmm0, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm1, xmm3
addss xmm0, xmm2
movss dword [eax + 0xf0], xmm1
movss dword [eax + 0xf4], xmm0
call fcn.100736c0
mov ecx, dword [0x1029bac8]
addss xmm0, dword [0x10285a68]
push 0x10098
push 0
mov eax, dword [ecx + 0x3e58]
mov dword [ebp - 0x68], 0x42600000
movss dword [ebp - 0x6c], xmm0
mov byte [eax + 0xac], 1
lea eax, [ebp - 0x6c]
mov ecx, dword [ecx + 0x3e58]
push eax
sub esp, 8
push str.TagTable1
call fcn.10041d50
add esp, 4
mov edx, eax
mov ecx, str.TagTable1
call fcn.10045a20
add esp, 0xc
test al, al
je 0x10114ba6
push 1
push 9
sub esp, 0xc
mov edx, 0x1029859c
mov eax, esp
mov ecx, str.Name
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
call fcn.10102ec0
add esp, 0x14
mov edx, 0x102985e4
mov ecx, str.Color
push 8
push 0
call fcn.101060e0
add esp, 8
mov ecx, 0x1029859c
cmp dword [0x102985b0], 0xf
cmova ecx, dword [0x1029859c]
call fcn.100de1a0
mov edx, 0xca0c003e
mov ecx, 0x10272bf1
mov esi, eax
call fcn.100de180
cmp esi, eax
je 0x10114aca
mov edx, 0x811c9dc5
mov ecx, str.Ignored
call fcn.100de180
cmp esi, eax
je 0x10114aca
movzx eax, byte [0x102985ec]
mov byte [0x1029bac6], 0
jmp 0x10114ad3
mov byte [0x1029bac6], 1
xor eax, eax
push 0
mov dword [ebp - 0x1c], eax
lea edx, [ebp - 0xa8]
push 2
sub esp, 0xc
mov dword [ebp - 0xa8], str.Priority
mov eax, esp
mov dword [ebp - 0xa4], str.Label
lea ecx, [ebp - 0xa0]
mov dword [ebp - 0x24], esp
mov dword [eax], 0
mov dword [eax + 4], 0
mov dword [eax + 8], 0
sub ecx, edx
mov dword [ebp - 4], 0x30
sub esp, 0xc
mov dword [ebp - 0x30], ecx
mov edi, esp
mov eax, ecx
sar eax, 2
mov dword [ebp - 0x64], eax
mov dword [edi], 0
mov dword [edi + 4], 0
mov dword [edi + 8], 0
test eax, eax
je 0x10114b6d
push eax
mov ecx, edi
call fcn.100a8db0
push dword [ebp - 0x30]
mov esi, dword [edi]
lea eax, [ebp - 0xa8]
push eax
push esi
call sub.VCRUNTIME140.dll_memmove
mov eax, dword [ebp - 0x64]
add esp, 0xc
lea eax, [esi + eax*4]
mov dword [edi + 4], eax
lea edx, [ebp - 0x1c]
mov dword [ebp - 4], 0xffffffff
mov ecx, str.Type
call fcn.10101ae0
add esp, 0x20
cmp dword [ebp - 0x1c], 0
setne byte [0x102985ec]
cmp byte [0x1029bac6], 0
je 0x10114b9f
mov byte [0x102985ec], 0
mov byte [0x1029bac6], 0
call fcn.10045cc0
call fcn.1006fed0
mov ecx, dword [0x1029bac8]
mov eax, dword [ecx + 0x3e58]
movss xmm3, dword [eax + 0xf0]
movss xmm2, dword [eax + 0xf4]
subss xmm3, dword [eax + 0x14]
subss xmm2, dword [eax + 0x18]
addss xmm3, dword [eax + 0x78]
addss xmm2, dword [eax + 0x7c]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
subss xmm3, dword [0x10285a68]
subss xmm2, dword [0x10285a84]
movss xmm1, dword [eax + 0x14]
movss xmm0, dword [eax + 0x18]
subss xmm1, dword [eax + 0x78]
subss xmm0, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm1, xmm3
addss xmm0, xmm2
movss dword [eax + 0xf0], xmm1
movss dword [eax + 0xf4], xmm0
call fcn.100736c0
mov ecx, dword [0x1029bac8]
addss xmm0, dword [0x10285a84]
push 0x10098
push 0
mov eax, dword [ecx + 0x3e58]
mov dword [ebp - 0x68], 0x42600000
movss dword [ebp - 0x6c], xmm0
mov byte [eax + 0xac], 1
lea eax, [ebp - 0x6c]
mov ecx, dword [ecx + 0x3e58]
push eax
sub esp, 8
push str.TagTable2
call fcn.10041d50
add esp, 4
mov edx, eax
mov ecx, str.TagTable2
call fcn.10045a20
add esp, 0xc
test al, al
je 0x10115181
mov al, byte [0x102985ec]
mov edx, 0x102985e8
mov ecx, dword [0x1029bac8]
mov byte [0x1029bac5], al
push 1
push 0x101a52e8
mov eax, dword [ecx + 0x3e58]
push 1
push 0xa
push 0xfffffffffffffff6
movss xmm1, dword [eax + 0xf4]
subss xmm1, dword [eax + 0x18]
push 0
addss xmm1, dword [eax + 0x7c]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
mov ecx, str.Priority
addss xmm1, dword [0x10285a94]
movss xmm0, dword [eax + 0x18]
subss xmm0, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm0, xmm1
movss dword [eax + 0xf4], xmm0
call fcn.10101790
mov esi, dword [0x1029bac8]
add esp, 0x18
mov byte [0x1029bac5], 0
mov byte [ebp - 0x12], 0
mov dword [ebp - 0x5c], 0x15
mov eax, dword [esi + 0x3e58]
lea ecx, [esi + 0x476c]
movss xmm2, dword [eax + 0x1c]
subss xmm2, dword [0x10285b64]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e58]
movss xmm0, dword [eax + 0x14]
movss xmm1, dword [eax + 0x18]
subss xmm0, dword [eax + 0x78]
subss xmm1, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm2, xmm0
addss xmm1, dword [0x10285aa8]
movss dword [eax + 0xf0], xmm2
movss dword [eax + 0xf4], xmm1
lea eax, [ebp - 0x5c]
movups xmm0, xmmword [esi + 0x39b0]
push eax
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
movups xmm0, xmmword [0x1029d97c]
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x5c], 0x17
push eax
movups xmmword [esi + 0x39b0], xmm0
mov esi, dword [0x1029bac8]
movups xmm0, xmmword [esi + 0x39d0]
lea ecx, [esi + 0x476c]
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
movups xmm0, xmmword [0x1029d97c]
mov ecx, 0x16
movups xmmword [esi + 0x39d0], xmm0
cmp dword [0x102985ac], 0
je 0x10114e13
mov edx, 0x1029d98c
call fcn.100402f0
lea edx, [ebp - 0x6c]
mov dword [ebp - 0x6c], 0x42200000
mov ecx, str.CreateButton
mov dword [ebp - 0x68], 0x42200000
call fcn.10075460
mov byte [ebp - 0x12], al
jmp 0x10114e38
mov edx, 0x1029d97c
call fcn.100402f0
lea edx, [ebp - 0x6c]
mov dword [ebp - 0x6c], 0x42200000
mov ecx, str.CreateButton
mov dword [ebp - 0x68], 0x42200000
call fcn.10075460
mov ecx, 3
call fcn.10040340
mov ecx, dword [0x1029bac8]
mov eax, dword [ecx + 0x3e58]
movss xmm2, dword [eax + 0x1c]
subss xmm2, dword [0x10285b50]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
movss xmm0, dword [eax + 0x14]
movss xmm1, dword [eax + 0x18]
subss xmm0, dword [eax + 0x78]
subss xmm1, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm2, xmm0
addss xmm1, dword [0x10285ad0]
movss dword [eax + 0xf0], xmm2
movss dword [eax + 0xf4], xmm1
cmp dword [0x102985ac], 0
je 0x10114ef4
push 0x1029859c
mov ecx, 0x102a5f20
call fcn.100e42f0
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
mov dl, al
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
test dl, dl
mov eax, 0x1027fb08
mov ecx, 0x1027dfa0
cmove ecx, eax
xor dl, dl
call fcn.100fdc90
jmp 0x10114f31
movss xmm0, dword [0x102859c8]
sub esp, 0x10
mov ecx, esp
mov byte [0x1029bac5], 1
movaps xmm3, xmm0
movaps xmm2, xmm0
movaps xmm1, xmm0
push ecx
mov dword [esp], 0xbf800000
call fcn.1003c750
xor dl, dl
mov ecx, 0x1027fb08
call fcn.100fdc90
mov byte [0x1029bac5], 0
mov esi, dword [0x1029bac8]
add esp, 0x10
mov dword [ebp - 0x5c], 0x15
mov eax, dword [esi + 0x3e58]
lea ecx, [esi + 0x476c]
movss xmm2, dword [eax + 0x1c]
subss xmm2, dword [0x10285b04]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e58]
movss xmm0, dword [eax + 0x14]
movss xmm1, dword [eax + 0x18]
subss xmm0, dword [eax + 0x78]
subss xmm1, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm2, xmm0
addss xmm1, dword [0x10285aa8]
movss dword [eax + 0xf0], xmm2
movss dword [eax + 0xf4], xmm1
lea eax, [ebp - 0x5c]
movups xmm0, xmmword [esi + 0x39b0]
push eax
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
movups xmm0, xmmword [0x1029d97c]
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x5c], 0x16
push eax
movups xmmword [esi + 0x39b0], xmm0
mov esi, dword [0x1029bac8]
movups xmm0, xmmword [esi + 0x39c0]
lea ecx, [esi + 0x476c]
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
movups xmm0, xmmword [0x1029d98c]
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x5c], 0x17
push eax
movups xmmword [esi + 0x39c0], xmm0
mov esi, dword [0x1029bac8]
movups xmm0, xmmword [esi + 0x39d0]
lea ecx, [esi + 0x476c]
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
movups xmm0, xmmword [0x1029d97c]
push ecx
lea edx, [ebp - 0x6c]
mov dword [ebp - 0x6c], 0x42200000
mov ecx, str.ClearButton
mov dword [ebp - 0x68], 0x42200000
movups xmmword [esi + 0x39d0], xmm0
call fcn.10075180
add esp, 4
mov byte [ebp - 0x11], al
mov ecx, 3
call fcn.10040340
mov edx, dword [0x1029bac8]
sub esp, 0x10
mov ecx, dword [edx + 0x3e58]
movss xmm2, dword [ecx + 0x1c]
subss xmm2, dword [0x10285ae4]
mov byte [ecx + 0xac], 1
mov ecx, 0x10280020
mov eax, dword [edx + 0x3e58]
xor dl, dl
movss xmm0, dword [eax + 0x14]
movss xmm1, dword [eax + 0x18]
subss xmm0, dword [eax + 0x78]
subss xmm1, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm2, xmm0
addss xmm1, dword [0x10285ad0]
movss dword [eax + 0xf0], xmm2
movss dword [eax + 0xf4], xmm1
mov eax, esp
mov dword [eax], 0x3f800000
mov dword [eax + 4], 0x3f800000
mov dword [eax + 8], 0x3f800000
mov dword [eax + 0xc], 0xbf800000
call fcn.100fdc90
add esp, 0x10
cmp byte [ebp - 0x12], 0
je 0x1011513d
mov esi, dword [0x102985e4]
mov ecx, 0x102a5f20
push 0x1029859c
mov byte [0x102a5f6f], 1
call fcn.1011bf30
push 0x1029859c
mov ecx, 0x102a5f20
mov dword [eax], esi
mov esi, dword [0x102985e8]
call fcn.1011bf30
push 0x1029859c
mov ecx, 0x102a5f20
mov dword [eax + 4], esi
mov al, byte [0x102985ec]
mov byte [ebp - 0x12], al
call fcn.1011bf30
mov cl, byte [ebp - 0x12]
mov byte [eax + 8], cl
jmp 0x10115143
cmp byte [ebp - 0x11], 0
je 0x10115181
push 0
push 0x101a078a
mov ecx, 0x1029859c
call fcn.10091b80
mov dword [ebp - 0x54], 0xffffffff
mov dword [ebp - 0x50], 0
movq xmm0, qword [ebp - 0x54]
mov word [ebp - 0x4c], 0x100
mov byte [ebp - 0x4a], 0
mov eax, dword [ebp - 0x4c]
movq qword [0x102985e4], xmm0
mov dword [0x102985ec], eax
call fcn.10045cc0
call fcn.1006e7e0
mov esi, dword [0x1029bac8]
lea eax, [ebp - 0x5c]
push eax
mov dword [ebp - 0x5c], 0
movups xmm0, xmmword [esi + 0x3860]
lea ecx, [esi + 0x476c]
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
cmp byte [0x1029bac5], 0
movups xmm0, xmmword [0x1029d99c]
movups xmmword [esi + 0x3860], xmm0
mov esi, dword [0x1029bac8]
mov eax, dword [esi + 0x3e58]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e58]
movss xmm1, dword [eax + 0x14]
movss xmm0, dword [eax + 0x18]
subss xmm1, dword [eax + 0x78]
subss xmm0, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm1, dword [0x10285aa0]
addss xmm0, dword [0x10285b44]
movss dword [eax + 0xf0], xmm1
movss dword [eax + 0xf4], xmm0
jne 0x10115226
cmp byte [0x1029bac6], 0
je 0x10115259
movss xmm0, dword [esi + 0x3780]
lea eax, [ebp - 0x54]
lea ecx, [esi + 0x4778]
mov dword [ebp - 0x54], 0
push eax
movss dword [ebp - 0x50], xmm0
call fcn.10058590
mov dword [esi + 0x3780], 0x3f000000
mov esi, dword [0x1029bac8]
movss xmm3, dword [0x10285c7c]
lea eax, [ebp - 0x50]
movss xmm2, dword [esi + 0x3bc8]
push ecx
push 0
push str.Priorities
push ecx
mov ecx, dword [esi + 0x3bc4]
mov dword [esp], 0xbf800000
push eax
call fcn.10067b60
push 1
xor edx, edx
mov ecx, str.Priorities
call fcn.10074250
mov dl, byte [0x1029bac5]
add esp, 4
test dl, dl
jne 0x101152ad
mov cl, byte [0x1029bac6]
test cl, cl
je 0x101152c3
mov ecx, 1
call fcn.100403f0
mov dl, byte [0x1029bac5]
mov cl, byte [0x1029bac6]
mov esi, dword [0x1029bac8]
mov eax, dword [esi + 0x3e58]
movss xmm2, dword [eax + 0x1c]
mov byte [eax + 0xac], 1
addss xmm2, xmm2
mov eax, dword [esi + 0x3e58]
movss xmm0, dword [eax + 0x14]
movss xmm1, dword [eax + 0x18]
divss xmm2, dword [0x10285a4c]
subss xmm0, dword [eax + 0x78]
subss xmm1, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm2, dword [0x10285a8c]
addss xmm1, dword [0x10285b44]
addss xmm2, xmm0
movss dword [eax + 0xf4], xmm1
movss dword [eax + 0xf0], xmm2
test dl, dl
jne 0x10115334
test cl, cl
je 0x10115367
movss xmm0, dword [esi + 0x3780]
lea eax, [ebp - 0x54]
lea ecx, [esi + 0x4778]
mov dword [ebp - 0x54], 0
push eax
movss dword [ebp - 0x50], xmm0
call fcn.10058590
mov dword [esi + 0x3780], 0x3f000000
mov esi, dword [0x1029bac8]
movss xmm3, dword [0x10285c7c]
lea eax, [ebp - 0x50]
movss xmm2, dword [esi + 0x3bc8]
push ecx
push 0
push str.Labels
push ecx
mov ecx, dword [esi + 0x3bc4]
mov dword [esp], 0xbf800000
push eax
call fcn.10067b60
push 1
xor edx, edx
mov ecx, str.Labels
call fcn.10074250
add esp, 4
cmp byte [0x1029bac5], 0
jne 0x101153b9
cmp byte [0x1029bac6], 0
je 0x101153c3
mov ecx, 1
call fcn.100403f0
mov ecx, 1
call fcn.10040340
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 4], 0x31
xor edi, edi
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x30], ecx
mov dword [ebp - 0x34], ecx
mov byte [ebp - 4], 0x32
mov ecx, dword [0x102a5f24]
mov dword [ebp - 0x64], ecx
mov esi, dword [ecx]
cmp esi, ecx
je 0x1011558b
nop
cmp byte [esi + 0x28], 0
lea eax, [esi + 8]
push eax
lea ecx, [ebp - 0xdc]
jne 0x101154b0
call fcn.10091990
movq xmm1, qword [esi + 0x20]
mov edx, dword [esi + 0x28]
movq qword [ebp - 0xc4], xmm1
mov dword [ebp - 0xbc], edx
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0x50]
cmp eax, dword [ebp - 0x1c]
je 0x10115495
xorps xmm0, xmm0
mov ecx, 0xf
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
movups xmm0, xmmword [ebp - 0xdc]
mov dword [eax + 0x14], 0
mov byte [ebp - 0xdc], 0
movups xmmword [eax], xmm0
movq xmm0, qword [ebp - 0xcc]
movq qword [eax + 0x10], xmm0
movq qword [eax + 0x18], xmm1
mov dword [eax + 0x20], edx
add eax, 0x24
mov dword [ebp - 0x50], eax
jmp 0x1011553a
lea ecx, [ebp - 0xdc]
push ecx
push eax
lea ecx, [ebp - 0x54]
call fcn.101233f0
mov eax, dword [ebp - 0x4c]
mov dword [ebp - 0x1c], eax
jmp 0x10115534
call fcn.10091990
movq xmm1, qword [esi + 0x20]
mov eax, dword [esi + 0x28]
movq qword [ebp - 0xc4], xmm1
mov dword [ebp - 0xbc], eax
mov byte [ebp - 4], 0x34
cmp edi, dword [ebp - 0x30]
je 0x1011551b
xorps xmm0, xmm0
mov ecx, 0xf
movups xmmword [edi], xmm0
mov dword [edi + 0x10], 0
movups xmm0, xmmword [ebp - 0xdc]
mov dword [edi + 0x14], 0
mov byte [ebp - 0xdc], 0
movups xmmword [edi], xmm0
movq xmm0, qword [ebp - 0xcc]
movq qword [edi + 0x10], xmm0
movq qword [edi + 0x18], xmm1
mov dword [edi + 0x20], eax
add edi, 0x24
mov dword [ebp - 0x38], edi
jmp 0x1011553a
lea eax, [ebp - 0xdc]
push eax
push edi
lea ecx, [ebp - 0x3c]
call fcn.101233f0
mov eax, dword [ebp - 0x34]
mov edi, dword [ebp - 0x38]
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 0xc8]
mov byte [ebp - 4], 0x32
cmp ecx, 0xf
jbe 0x10115572
mov edx, dword [ebp - 0xdc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10115568
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1011577f
push ecx
push edx
call fcn.1016f528
add esp, 8
mov eax, dword [esi]
mov esi, eax
cmp eax, dword [ebp - 0x64]
jne 0x10115410
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x2c], ecx
mov esi, dword [ebp - 0x50]
mov ecx, esi
push dword [ebp - 0x24]
sub ecx, eax
mov eax, 0x38e38e39
imul ecx
mov ecx, dword [ebp - 0x70]
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
push eax
call fcn.101221b0
push dword [ebp - 0x24]
mov ecx, edi
mov eax, 0x38e38e39
sub ecx, dword [ebp - 0x2c]
imul ecx
mov ecx, dword [ebp - 0x2c]
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, edi
push eax
call fcn.10122590
xor eax, eax
xor ecx, ecx
mov dword [ebp - 0x18], eax
add esp, 0x10
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x64], ecx
mov dword [ebp - 0x24], eax
cmp eax, esi
je 0x10115618
mov dword [ebp - 0x18], ecx
mov edi, eax
sub esp, 0x18
mov ecx, esp
push edi
call fcn.10091990
mov eax, dword [ebp - 0x18]
push eax
lea eax, [edi + 0x18]
push eax
call fcn.10118a00
inc dword [ebp - 0x18]
add edi, 0x24
cmp edi, esi
jne 0x101155f1
mov edi, dword [ebp - 0x38]
xor ecx, ecx
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x24], eax
cmp eax, edi
je 0x1011564c
mov esi, eax
sub esp, 0x18
mov ecx, esp
push esi
call fcn.10091990
push dword [ebp - 0x64]
lea eax, [esi + 0x18]
push eax
call fcn.10118a00
mov ecx, dword [ebp - 0x64]
add esi, 0x24
inc ecx
mov dword [ebp - 0x64], ecx
cmp esi, edi
jne 0x10115624
mov esi, dword [ebp - 0x50]
mov eax, dword [ebp - 0x18]
xorps xmm3, xmm3
cmp eax, ecx
cmovl eax, ecx
mov ecx, dword [0x1029bac8]
sub esp, 8
movd xmm2, eax
mov eax, dword [ecx + 0x3e58]
cvtdq2ps xmm2, xmm2
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
mulss xmm2, dword [0x10285ae8]
movss xmm1, dword [eax + 0x14]
movss xmm0, dword [eax + 0x18]
subss xmm1, dword [eax + 0x78]
subss xmm0, dword [eax + 0x7c]
addss xmm2, dword [0x10285b24]
mov byte [eax + 0x131], 1
addss xmm1, xmm3
addss xmm0, xmm2
movss dword [eax + 0xf0], xmm1
movss dword [eax + 0xf4], xmm0
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0x41e00000
call fcn.100fd0a0
add esp, 8
mov byte [ebp - 4], 0x31
cmp dword [ebp - 0x2c], 0
je 0x1011572e
mov edx, edi
mov edi, dword [ebp - 0x2c]
push ecx
mov ecx, edi
call fcn.1011fc50
mov ecx, dword [ebp - 0x30]
mov eax, 0x38e38e39
sub ecx, edi
add esp, 4
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*8]
mov eax, edi
shl ecx, 2
cmp ecx, 0x1000
jb 0x10115724
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1011577f
push ecx
push edi
call fcn.1016f528
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov edi, dword [ebp - 0x70]
test edi, edi
je 0x1011578f
push ecx
mov edx, esi
mov ecx, edi
call fcn.1011fc50
mov ecx, dword [ebp - 0x1c]
mov eax, 0x38e38e39
sub ecx, edi
add esp, 4
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*8]
mov eax, edi
shl ecx, 2
cmp ecx, 0x1000
jb 0x10115785
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10115785
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edi
call fcn.1016f528
add esp, 8
mov ecx, dword [0x1029cd08]
xorps xmm1, xmm1
add ecx, 0xfffffffc
mov eax, dword [ecx]
mov dword [ebp - 0x24], eax
mov eax, dword [0x1029bac8]
mov dword [0x1029cd08], ecx
movss xmm0, dword [eax + 0x46e8]
mov eax, dword [eax + 0x3e58]
subss xmm0, dword [eax + 0x18]
comiss xmm0, xmm1
movss dword [ebp - 0x1c], xmm0
jbe 0x101157e1
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.1011f330
movss xmm0, dword [ebp - 0x1c]
mov eax, dword [eax]
movss dword [eax + 0xc], xmm0
mov ecx, 1
call fcn.100403f0
call fcn.10045cc0
mov ecx, 1
call fcn.100403f0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov eax, dword [0x1029bac8]
push ecx
push str.MaterialsTable
mov dword [ebp - 0x38], edi
mov ecx, dword [eax + 0x3e58]
mov dword [ebp - 0x34], edi
call fcn.10041d50
push ecx
mov dword [esp], edi
lea ecx, [ebp - 0x38]
push ecx
push 0
push 2
mov edx, eax
mov ecx, str.MaterialsTable
call fcn.1006bd10
add esp, 0x10
test al, al
je case.default.0x1011267a
call fcn.1006fed0
movss xmm1, dword [0x102859c8]
xor dl, dl
mov ecx, str.Manager
call fcn.100fdfa0
test al, al
je 0x10115fc8
mov eax, dword fs:[0x2c]
mov ecx, dword [0x1029b784]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x102a614c]
cmp eax, dword [ecx + 4]
jle 0x101158b9
push 0x102a614c
call fcn.1016f60a
add esp, 4
cmp dword [0x102a614c], 0xffffffff
jne 0x101158b9
push 0x1017ef80
call fcn.1016f973
add esp, 4
push 0x102a614c
call fcn.1016f5b9
add esp, 4
push 0
push 9
sub esp, 0xc
mov edx, 0x102985cc
mov eax, esp
mov ecx, str.Material_name
mov dword [eax], edi
mov dword [eax + 4], edi
mov dword [eax + 8], edi
call fcn.10102ec0
add esp, 0x14
mov edx, 0x1c
mov ecx, str.Create
push 0
call fcn.100fed20
add esp, 4
test al, al
je 0x1011591a
cmp dword [0x102985dc], edi
jbe 0x1011591a
sub esp, 0x18
mov ecx, esp
push 0x102985cc
call fcn.10091990
call fcn.1014bd90
mov ecx, 0x102985cc
call fcn.10091850
push 0
mov edx, 0x1c
mov ecx, str.Folder
call fcn.100fed20
add esp, 4
test al, al
je 0x10115970
push str.Materials
mov edx, 0x102a5d70
lea ecx, [ebp - 0xd0]
call fcn.100d8d00
add esp, 4
mov ecx, eax
push 0xa
push 0
push 0
call fcn.1006bb20
push eax
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [ebp - 0xd0]
call fcn.10090cb0
xor edi, edi
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x4c], edi
mov dword [ebp - 4], 0x35
mov eax, dword [0x1029d61c]
mov dword [ebp - 0x24], eax
mov esi, dword [eax]
cmp esi, eax
je 0x10115a08
lea edi, [esi + 8]
push edi
lea ecx, [ebp - 0xf0]
call fcn.10091990
mov byte [ebp - 4], 0x36
lea ecx, [ebp - 0xd4]
mov eax, dword [edi + 0x18]
mov dword [ebp - 0xd8], eax
lea eax, [edi + 0x1c]
push eax
call fcn.10091990
mov al, byte [edi + 0x34]
mov byte [ebp - 0xbc], al
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0xf0]
mov ecx, dword [ebp - 0x50]
push eax
cmp ecx, dword [ebp - 0x4c]
je 0x101159e4
call fcn.10125440
add ecx, 0x38
mov dword [ebp - 0x50], ecx
jmp 0x101159ed
push ecx
lea ecx, [ebp - 0x54]
call fcn.101235d0
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x35
call fcn.100a5f60
mov eax, dword [esi]
mov esi, eax
cmp eax, dword [ebp - 0x24]
jne 0x10115990
mov edi, dword [ebp - 0x54]
mov esi, dword [ebp - 0x50]
mov eax, 0x92492493
push dword [ebp - 0x24]
mov ecx, esi
sub ecx, edi
imul ecx
add edx, ecx
mov ecx, edi
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, esi
push eax
call fcn.10122820
add esp, 8
cmp edi, esi
je 0x10115fb6
mov ecx, dword [0x1029bac8]
mov edx, 0x1029d9ac
mov eax, dword [ecx + 0x3e58]
movss xmm1, dword [eax + 0xf4]
subss xmm1, dword [eax + 0x18]
addss xmm1, dword [eax + 0x7c]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
movss dword [ebp - 0x1c], xmm1
movss xmm2, dword [eax + 0x14]
movss xmm0, dword [eax + 0x18]
subss xmm2, dword [eax + 0x78]
subss xmm0, dword [eax + 0x7c]
addss xmm1, dword [0x10285a90]
mov byte [eax + 0x131], 1
addss xmm2, dword [0x10285aa0]
addss xmm1, xmm0
movss dword [eax + 0xf0], xmm2
movss dword [eax + 0xf4], xmm1
mov eax, edi
cmp dword [edi + 0x14], 0xf
jbe 0x10115ab8
mov eax, dword [edi]
cmp byte [edi + 0x34], 0
mov ecx, 0x1029d99c
push eax
mov eax, edx
cmovne eax, ecx
push eax
call fcn.10074a20
add esp, 8
mov edx, 0x1a
cmp byte [edi + 0x34], 0
jne 0x10115d6e
mov ecx, dword [0x1029bac8]
sub esp, 0x10
mov eax, dword [ecx + 0x3e58]
movss xmm2, dword [eax + 0x1c]
subss xmm2, dword [0x10285ac8]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
mov ecx, 0x1027fb00
movss xmm0, dword [eax + 0x14]
subss xmm0, dword [eax + 0x78]
movss xmm1, dword [eax + 0x18]
subss xmm1, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm2, xmm0
movss xmm0, dword [ebp - 0x1c]
addss xmm0, dword [0x10285a88]
movss dword [eax + 0xf0], xmm2
addss xmm0, xmm1
movss dword [eax + 0xf4], xmm0
mov eax, esp
mov dword [eax], 0x3f800000
mov dword [eax + 4], 0x3f800000
mov dword [eax + 8], 0x3f800000
mov dword [eax + 0xc], 0xbf800000
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x10115c20
push 0x1a
push str.Confirmation_DeleteMat
mov edx, edi
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0x38
cmp dword [eax + 0x14], 0xf
jbe 0x10115ba3
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov esi, dword [0x1029bac8]
push ecx
push eax
mov ecx, dword [esi + 0x3e58]
call fcn.10041d50
test byte [esi + 0x5afc], 4
mov dword [ebp - 0x24], eax
je 0x10115bd6
push eax
push dword [ebp - 0x30]
push str._popup__OpenPopup___s_____0x_08X__n
call fcn.10057a20
mov eax, dword [ebp - 0x24]
add esp, 0xc
xor edx, edx
mov ecx, eax
call fcn.10050e90
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xf
jbe 0x10115c1d
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10115c13
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1011471b
push ecx
push edx
call fcn.1016f528
add esp, 8
mov esi, dword [ebp - 0x50]
push 0x1a
push str.Confirmation_DeleteMat
mov edx, edi
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
mov byte [ebp - 4], 0x39
cmp dword [eax + 0x14], 0xf
jbe 0x10115c43
mov eax, dword [eax]
push 0x10041
mov ecx, eax
call fcn.100515a0
mov byte [ebp - 4], 0x35
add esp, 4
mov ecx, dword [ebp - 0x8c]
mov byte [ebp - 0x12], al
cmp ecx, 0xf
jbe 0x10115c96
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10115c89
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1011471b
push ecx
push edx
call fcn.1016f528
mov al, byte [ebp - 0x12]
add esp, 8
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
test al, al
je 0x10115d69
push 0x22
push str.Do_you_really_want_to_delete__
mov edx, edi
lea ecx, [ebp - 0x48]
call fcn.100e0310
add esp, 8
mov byte [ebp - 4], 0x3a
cmp dword [eax + 0x14], 0xf
jbe 0x10115cd9
mov eax, dword [eax]
push eax
call fcn.10074950
mov byte [ebp - 4], 0x35
add esp, 4
mov ecx, dword [ebp - 0x34]
cmp ecx, 0xf
jbe 0x10115d1a
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10115d10
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1011471b
push ecx
push edx
call fcn.1016f528
add esp, 8
push 0
mov edx, 1
mov ecx, 0x1027cc08
call fcn.100fed20
add esp, 4
test al, al
je 0x10115d47
sub esp, 0x18
mov ecx, esp
push edi
call fcn.10091990
call fcn.1014cf20
call fcn.100513b0
push 0
mov edx, 0xa
mov ecx, 0x1027cc0c
call fcn.100fed20
add esp, 4
test al, al
je 0x10115d64
call fcn.100513b0
call fcn.100516f0
mov edx, 0x33
mov ecx, dword [0x1029bac8]
sub esp, 0x10
movd xmm0, edx
cvtdq2ps xmm0, xmm0
mov eax, dword [ecx + 0x3e58]
movss xmm3, dword [eax + 0x1c]
mov byte [eax + 0xac], 1
subss xmm3, xmm0
mov eax, dword [ecx + 0x3e58]
mov ecx, 0x1027fad8
movss xmm0, dword [ebp - 0x1c]
addss xmm0, dword [0x10285a88]
movss xmm1, dword [eax + 0x14]
movss xmm2, dword [eax + 0x18]
subss xmm1, dword [eax + 0x78]
subss xmm2, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm3, xmm1
addss xmm0, xmm2
movss dword [eax + 0xf0], xmm3
movss dword [eax + 0xf4], xmm0
mov eax, esp
mov dword [eax], 0x3f800000
mov dword [eax + 4], 0x3f800000
mov dword [eax + 8], 0x3f800000
mov dword [eax + 0xc], 0xbf800000
call fcn.100fdd90
add esp, 0x10
test al, al
je 0x10115f46
cmp edi, 0x1029d900
je 0x10115e2c
cmp dword [edi + 0x14], 0xf
mov eax, edi
jbe 0x10115e1e
mov eax, dword [edi]
push dword [edi + 0x10]
mov ecx, 0x1029d900
push eax
call fcn.10091b80
mov al, byte [edi + 0x34]
lea ecx, [ebp - 0x88]
push 0x1029d900
mov byte [0x1029d918], al
call fcn.10091990
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x3b
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.1014d7e0
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x64]
or ecx, 0x100
mov dword [ebp - 0x18], ecx
cmp eax, dword [0x1029d61c]
je 0x10115e83
add eax, 0x24
lea ecx, [ebp - 0x48]
push eax
call fcn.10091990
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x2c], eax
jmp 0x10115ea2
xorps xmm0, xmm0
mov dword [ebp - 0x38], 0
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x34], 0xf
mov byte [ebp - 0x48], 0
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x2c], ecx
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x10115edd
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10115ed3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1011471b
push ecx
push edx
call fcn.1016f528
add esp, 8
mov byte [ebp - 0x88], 0
mov dword [ebp - 0x74], 0xf
mov dword [ebp - 0x78], 0
lea eax, [ebp - 0x48]
mov byte [ebp - 4], 0x3c
push eax
mov ecx, 0x1029d6a8
call fcn.1008cac0
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x34]
cmp ecx, 0xf
jbe 0x10115f3c
mov edx, dword [ebp - 0x48]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10115f32
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1011471b
push ecx
push edx
call fcn.1016f528
add esp, 8
mov al, byte [0x1029d918]
mov byte [0x1029d6e5], al
mov ecx, dword [0x1029bac8]
sub esp, 8
mov eax, dword [ecx + 0x3e58]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
movss xmm1, dword [eax + 0x14]
movss xmm0, dword [eax + 0x18]
subss xmm1, dword [eax + 0x78]
subss xmm0, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm1, dword [0x10285a78]
addss xmm0, dword [ebp - 0x1c]
movss dword [eax + 0xf0], xmm1
movss dword [eax + 0xf4], xmm0
mov eax, esp
mov dword [eax], 0
mov dword [eax + 4], 0x41e00000
call fcn.100fd0a0
add edi, 0x38
jmp 0x10115a2f
lea ecx, [ebp - 0x54]
mov dword [ebp - 4], 0xffffffff
call fcn.1011bd30
mov edi, dword [ebp - 0x18]
call fcn.100fe340
call fcn.1006fed0
cmp dword [0x1029d910], 0
je 0x101163ce
lea eax, [ebp - 0xa0]
mov ecx, 0x1029d6a8
push eax
call fcn.1008f2e0
cmp dword [eax + 0x14], 0xf
lea edx, [eax + 0x10]
mov edx, dword [edx]
jbe 0x10116003
mov ecx, dword [eax]
mov eax, ecx
add edx, ecx
jmp 0x10116005
add edx, eax
push 0xa
push edx
push eax
call fcn.10170420
mov ecx, dword [ebp - 0x8c]
mov esi, eax
cmp ecx, 0xf
jbe 0x1011604c
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10116042
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10116042
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1016f528
add esp, 8
mov eax, esi
mov dl, 1
shl eax, 4
mov ecx, str.Editor
sub eax, esi
add eax, 0x51
movd xmm1, eax
cvtdq2ps xmm1, xmm1
call fcn.100fdfa0
test al, al
je 0x101163c9
cmp byte [0x1029d918], 0
jne 0x10116138
push 0
mov edx, 4
mov ecx, str.Save
call fcn.100fed20
add esp, 4
test al, al
je 0x10116128
lea eax, [ebp - 0xa0]
mov ecx, 0x1029d6a8
push eax
call fcn.1008f2e0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0x3d
push eax
lea ecx, [ebp - 0xa0]
call fcn.10091810
lea ecx, [ebp - 0xa0]
mov edx, dword [eax]
lea eax, [ebp - 0x1c]
push eax
call fcn.10091810
push edx
lea ecx, [ebp - 0xa0]
mov eax, dword [eax]
dec eax
push eax
lea eax, [ebp - 0x30]
push eax
call fcn.100d9dc0
sub esp, 0x18
lea eax, [ebp - 0xa0]
mov ecx, esp
mov dword [ebp - 0x24], esp
push eax
call fcn.10091990
sub esp, 0x18
mov byte [ebp - 4], 0x3e
mov ecx, esp
push 0x1029d900
call fcn.10091990
mov byte [ebp - 4], 0x3d
call fcn.1014c710
lea ecx, [ebp - 0xa0]
mov dword [ebp - 4], 0xffffffff
call fcn.10090cb0
movss xmm1, dword [0x10285ca4]
xorps xmm0, xmm0
call fcn.1004fa10
push 0
mov edx, 4
mov ecx, str.Close
call fcn.100fed20
add esp, 4
test al, al
je 0x10116161
push 0
push 0x101a078a
mov ecx, 0x1029d900
call fcn.10091b80
movss xmm1, dword [0x10285ca4]
xorps xmm0, xmm0
call fcn.1004fa10
mov esi, dword [0x1029bac8]
mov dword [ebp - 0x5c], 0
mov eax, dword [esi + 0x3e58]
lea ecx, [esi + 0x476c]
movss xmm1, dword [eax + 0xf4]
subss xmm1, dword [eax + 0x18]
addss xmm1, dword [eax + 0x7c]
mov byte [eax + 0xac], 1
mov eax, dword [esi + 0x3e58]
addss xmm1, dword [0x10285acc]
movss xmm0, dword [eax + 0x18]
subss xmm0, dword [eax + 0x7c]
mov byte [eax + 0x131], 1
addss xmm0, xmm1
movss dword [eax + 0xf4], xmm0
lea eax, [ebp - 0x5c]
movups xmm0, xmmword [esi + 0x3860]
push eax
movups xmmword [ebp - 0x58], xmm0
call fcn.10058650
movups xmm0, xmmword [0x1029d99c]
push 0xb
mov edx, 0x1029d900
movups xmmword [esi + 0x3860], xmm0
cmp byte [0x1029d918], 0
je 0x1011621f
push str.Viewing:_
lea ecx, [ebp - 0x88]
call fcn.100e0310
add esp, 8
mov dword [ebp - 4], 0x3f
or edi, 0x40
jmp 0x1011623f
push str.Editing:_
lea ecx, [ebp - 0xa0]
call fcn.100e0310
add esp, 8
mov dword [ebp - 4], 0x40
or edi, 0x80
cmp dword [eax + 0x14], 0xf
mov dword [ebp - 0x2c], edi
mov dword [ebp - 0x18], edi
jbe 0x1011624d
mov eax, dword [eax]
mov edx, 2
mov ecx, eax
call fcn.100febd0
mov dword [ebp - 4], 0x3f
mov eax, dword [ebp - 0x18]
test al, al
jns 0x101162c3
mov ecx, dword [ebp - 0x8c]
and eax, 0xffffff7f
mov dword [ebp - 0x18], eax
cmp ecx, 0xf
jbe 0x101162a8
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1011629b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x101162f7
push ecx
push edx
call fcn.1016f528
mov eax, dword [ebp - 0x18]
add esp, 8
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
mov dword [ebp - 4], 0xffffffff
test al, 0x40
je 0x10116307
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x10116307
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x101162fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x101162fd
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.1016f528
add esp, 8
mov ecx, 1
call fcn.10040340
mov ecx, dword [0x1029bac8]
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x34], 0x41000000
mov eax, dword [ecx + 0x3e58]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e58]
cmp byte [eax + 0xaf], 0
jne 0x1011639b
movss xmm3, dword [eax + 0xf0]
lea ecx, [ebp - 0x38]
movss xmm1, dword [0x10285ca4]
xorps xmm0, xmm0
movaps xmm4, xmm3
movss dword [ebp - 0x58], xmm3
addss xmm4, xmm0
movss xmm0, dword [eax + 0xf4]
movaps xmm2, xmm0
movss dword [ebp - 0x54], xmm0
addss xmm2, dword [0x10285a84]
movss dword [ebp - 0x50], xmm4
movss dword [ebp - 0x4c], xmm2
call fcn.1004f650
push 0
push 0
xor edx, edx
lea ecx, [ebp - 0x58]
call fcn.1004f7b0
add esp, 8
mov ecx, dword [0x1029d9d4]
call fcn.1004bbd0
push ecx
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], 0
push eax
push ecx
mov ecx, 0x1029d6a8
mov dword [ebp - 0x34], 0
call fcn.1008c8d0
call fcn.1004bc90
call fcn.100fe340
call fcn.1006e7e0
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret