Function at 0x10011040
Capabilities:
Read file on windows
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10064435
mov eax, dword fs:[0]
push eax
sub esp, 0x338
mov eax, dword [0x1008a884]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x15c], ecx
push 0x100684ec
mov eax, dword [ebp + 8]
push eax
call fcn.1004dd0e
add esp, 8
mov dword [ebp - 0x16c], eax
cmp dword [ebp - 0x16c], 0
jne 0x100110ae
push 0x10
push 0x100684f0
push str.ItemOptionSystem_Exc.bmd_file_not_found
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 2
push 0
mov ecx, dword [ebp - 0x16c]
push ecx
call fcn.1004e322
add esp, 0xc
mov edx, dword [ebp - 0x16c]
push edx
call fcn.1004e981
add esp, 4
mov dword [ebp - 0x18c], eax
mov eax, dword [ebp - 0x16c]
push eax
call fcn.1004eb47
add esp, 4
mov ecx, dword [ebp - 0x18c]
push ecx
call fcn.10046deb
add esp, 4
mov dword [ebp - 0x1cc], eax
mov edx, dword [ebp - 0x1cc]
mov dword [ebp - 0x17c], edx
mov eax, dword [ebp - 0x16c]
push eax
mov ecx, dword [ebp - 0x18c]
push ecx
push 1
mov edx, dword [ebp - 0x17c]
push edx
call fcn.1004defe
add esp, 0x10
mov eax, dword [ebp - 0x16c]
push eax
call fcn.1004dc27
add esp, 4
mov dword [ebp - 0x170], 0
jmp 0x1001114f
mov ecx, dword [ebp - 0x170]
add ecx, 1
mov dword [ebp - 0x170], ecx
mov edx, dword [ebp - 0x170]
cmp edx, dword [ebp - 0x18c]
jge 0x10011197
mov eax, dword [ebp - 0x170]
and eax, 0x8000001f
jns 0x1001116f
dec eax
or eax, 0xffffffe0
inc eax
movzx ecx, byte [eax + 0x1008a4c0]
mov edx, dword [ebp - 0x17c]
add edx, dword [ebp - 0x170]
movsx eax, byte [edx]
xor eax, ecx
mov ecx, dword [ebp - 0x17c]
add ecx, dword [ebp - 0x170]
mov byte [ecx], al
jmp 0x10011140
lea ecx, [ebp - 0x154]
call fcn.100416e0
mov dword [ebp - 4], 0
push 0
push 0x74
mov edx, dword [ebp - 0x18c]
push edx
mov eax, dword [ebp - 0x17c]
push eax
lea ecx, [ebp - 0x2fc]
push ecx
lea ecx, [ebp - 0x154]
call fcn.10042290
cmp dword [ebp - 0x2fc], 0
je 0x10011208
mov edx, dword [ebp - 0x17c]
mov dword [ebp - 0x1d4], edx
mov eax, dword [ebp - 0x1d4]
push eax
call fcn.10046df4
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.100417c0
jmp 0x10011fc9
mov ecx, dword [ebp - 0x15c]
add ecx, 0x10
call fcn.10012b30
mov ecx, dword [ebp - 0x15c]
add ecx, 0x18
call fcn.10012b60
mov ecx, dword [ebp - 0x15c]
add ecx, 0x20
call fcn.10012b60
push str.ItemOptionSystem
lea ecx, [ebp - 0x174]
push ecx
lea ecx, [ebp - 0x154]
call fcn.10041c60
push 0
push 0x10068534
lea edx, [ebp - 0x2a4]
push edx
lea ecx, [ebp - 0x174]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b20
mov ecx, dword [ebp - 0x15c]
mov byte [ecx + 0xc], al
push str.Notices
lea edx, [ebp - 0x194]
push edx
lea ecx, [ebp - 0x174]
call fcn.10041c60
push 0
push str.PrintRequirementNotice
lea eax, [ebp - 0x2d4]
push eax
lea ecx, [ebp - 0x194]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b20
mov ecx, dword [ebp - 0x15c]
mov byte [ecx + 0xb18], al
push 0
push 0x1006855c
lea edx, [ebp - 0x2d8]
push edx
lea ecx, [ebp - 0x194]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov ecx, dword [ebp - 0x15c]
mov byte [ecx + 0xb19], al
push str.Strings
lea edx, [ebp - 0x1dc]
push edx
lea ecx, [ebp - 0x194]
call fcn.10041c60
push str.String
lea eax, [ebp - 0x190]
push eax
lea ecx, [ebp - 0x1dc]
call fcn.10041c60
jmp 0x1001132b
lea ecx, [ebp - 0x2dc]
push ecx
lea ecx, [ebp - 0x190]
call fcn.100425c0
mov edx, dword [eax]
mov dword [ebp - 0x190], edx
lea ecx, [ebp - 0x190]
call fcn.10041800
test eax, eax
je 0x1001138d
push 0x100684e9
push 0x10068574
lea eax, [ebp - 0x2e0]
push eax
lea ecx, [ebp - 0x190]
call fcn.10041bf0
mov ecx, eax
call fcn.10041bd0
push eax
lea ecx, [ebp - 0x74]
call fcn.10005610
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x74]
push ecx
mov ecx, dword [ebp - 0x15c]
add ecx, 0xb28
call fcn.10012d30
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x74]
call fcn.10006b80
jmp 0x10011311
push str.Requirements
lea edx, [ebp - 0x1e0]
push edx
lea ecx, [ebp - 0x194]
call fcn.10041c60
push 0x1006858c
lea eax, [ebp - 0x198]
push eax
lea ecx, [ebp - 0x1e0]
call fcn.10041c60
jmp 0x100113d7
lea ecx, [ebp - 0x2e4]
push ecx
lea ecx, [ebp - 0x198]
call fcn.100425c0
mov edx, dword [eax]
mov dword [ebp - 0x198], edx
lea ecx, [ebp - 0x198]
call fcn.10041800
test eax, eax
je 0x10011445
push 0x100684ea
push 0x10068590
lea eax, [ebp - 0x2e8]
push eax
lea ecx, [ebp - 0x198]
call fcn.10041bf0
mov ecx, eax
call fcn.10041bd0
push eax
lea ecx, [ebp - 0x8c]
call fcn.10005610
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x8c]
push ecx
mov ecx, dword [ebp - 0x15c]
add ecx, 0xb1c
call fcn.10012d30
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x8c]
call fcn.10006b80
jmp 0x100113bd
push str.Items
lea edx, [ebp - 0x1e4]
push edx
lea ecx, [ebp - 0x174]
call fcn.10041c60
push 0x100685a0
lea eax, [ebp - 0x164]
push eax
lea ecx, [ebp - 0x1e4]
call fcn.10041c60
jmp 0x1001148f
lea ecx, [ebp - 0x2ec]
push ecx
lea ecx, [ebp - 0x164]
call fcn.100425c0
mov edx, dword [eax]
mov dword [ebp - 0x164], edx
lea ecx, [ebp - 0x164]
call fcn.10041800
test eax, eax
je 0x10011705
push 0
push 0x100685a8
lea eax, [ebp - 0x2f0]
push eax
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov esi, eax
shl esi, 9
push 0
push 0x100685ac
lea ecx, [ebp - 0x210]
push ecx
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
add esi, eax
mov word [ebp - 0x180], si
push 0
push 0x100685b4
lea edx, [ebp - 0x214]
push edx
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov dword [ebp - 0x5c], eax
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0x100685c0
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b60
call fcn.10046f90
mov dword [ebp - 0x58], eax
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0x100685cc
lea ecx, [ebp - 0x21c]
push ecx
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b60
call fcn.10046f90
mov dword [ebp - 0x54], eax
push 0
push str.Ancient
lea edx, [ebp - 0x220]
push edx
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov word [ebp - 0x50], ax
push 0
push str.Excellent
lea eax, [ebp - 0x224]
push eax
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x4e], al
push 0
push 0x100685f4
lea ecx, [ebp - 0x228]
push ecx
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x4d], al
push 0
push str.SocketCount
lea edx, [ebp - 0x22c]
push edx
lea ecx, [ebp - 0x164]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x4c], al
mov ax, word [ebp - 0x180]
mov word [ebp - 0x19a], ax
lea ecx, [ebp - 0x19a]
push ecx
lea edx, [ebp - 0x1a4]
push edx
mov ecx, dword [ebp - 0x15c]
add ecx, 0x10
call fcn.10012c60
lea eax, [ebp - 0x230]
push eax
mov ecx, dword [ebp - 0x15c]
add ecx, 0x10
call fcn.10012b20
push eax
lea ecx, [ebp - 0x1a4]
call fcn.10010c80
movzx ecx, al
test ecx, ecx
je 0x1001166e
lea edx, [ebp - 0x5c]
push edx
lea ecx, [ebp - 0x1a4]
call fcn.10010c90
add eax, 4
mov ecx, eax
call fcn.1000fc10
jmp 0x10011700
lea ecx, [ebp - 0x200]
call fcn.10010710
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x200]
call fcn.10012bc0
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x200]
call fcn.1000fc10
lea ecx, [ebp - 0x200]
push ecx
lea edx, [ebp - 0x180]
push edx
lea ecx, [ebp - 0x32c]
call fcn.1000fc70
mov dword [ebp - 0x1e8], eax
mov eax, dword [ebp - 0x1e8]
mov dword [ebp - 0x1b0], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x1b0]
push ecx
lea edx, [ebp - 0x314]
push edx
mov ecx, dword [ebp - 0x15c]
add ecx, 0x10
call fcn.10010610
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x328]
call fcn.10010a60
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x200]
call fcn.10010a60
jmp 0x10011475
push str.Muun
lea eax, [ebp - 0x1b4]
push eax
lea ecx, [ebp - 0x174]
call fcn.10041c60
push 0x10068614
lea ecx, [ebp - 0x158]
push ecx
lea ecx, [ebp - 0x1b4]
call fcn.10041c60
jmp 0x1001174f
lea edx, [ebp - 0x234]
push edx
lea ecx, [ebp - 0x158]
call fcn.100425c0
mov eax, dword [eax]
mov dword [ebp - 0x158], eax
lea ecx, [ebp - 0x158]
call fcn.10041800
test eax, eax
je 0x10011ad0
xor ecx, ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x30], ecx
push 0
push 0x1006861c
lea edx, [ebp - 0x238]
push edx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov esi, eax
shl esi, 9
push 0
push 0x10068620
lea eax, [ebp - 0x23c]
push eax
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
add esi, eax
mov word [ebp - 0x184], si
push 0
push 0x10068628
lea ecx, [ebp - 0x240]
push ecx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov dword [ebp - 0x44], eax
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0x10068634
lea edx, [ebp - 0x244]
push edx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b60
fstp dword [ebp - 0x40]
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push 0x10068640
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b60
fstp dword [ebp - 0x3c]
push 0
push 0x10068654
lea ecx, [ebp - 0x24c]
push ecx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x48], al
push 0
push 0x10068660
lea edx, [ebp - 0x250]
push edx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x47], al
push 0
push str.IsGrouped
lea eax, [ebp - 0x254]
push eax
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b20
mov byte [ebp - 0x38], al
push 0
push str.Cat2
lea ecx, [ebp - 0x258]
push ecx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov esi, eax
shl esi, 9
push 0
push str.Index2
lea edx, [ebp - 0x25c]
push edx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
add esi, eax
mov word [ebp - 0x36], si
push 0
push str.Cat3
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov esi, eax
shl esi, 9
push 0
push str.Index3
lea ecx, [ebp - 0x264]
push ecx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
add esi, eax
mov word [ebp - 0x32], si
push 0
push str.MinLevel2
lea edx, [ebp - 0x268]
push edx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x34], al
push 0
push str.MaxLevel2
lea eax, [ebp - 0x26c]
push eax
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x33], al
push 0
push str.MinLevel3
lea ecx, [ebp - 0x270]
push ecx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x30], al
push 0
push str.MaxLevel3
lea edx, [ebp - 0x274]
push edx
lea ecx, [ebp - 0x158]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x2f], al
mov ax, word [ebp - 0x184]
mov word [ebp - 0x19e], ax
lea ecx, [ebp - 0x19e]
push ecx
lea edx, [ebp - 0x1a8]
push edx
mov ecx, dword [ebp - 0x15c]
add ecx, 0x18
call fcn.10012c60
lea eax, [ebp - 0x278]
push eax
mov ecx, dword [ebp - 0x15c]
add ecx, 0x18
call fcn.10012b20
push eax
lea ecx, [ebp - 0x1a8]
call fcn.10010c80
movzx ecx, al
test ecx, ecx
je 0x10011a39
lea edx, [ebp - 0x48]
push edx
lea ecx, [ebp - 0x1a8]
call fcn.10010c90
add eax, 4
mov ecx, eax
call fcn.10012cf0
jmp 0x10011acb
lea ecx, [ebp - 0x1f4]
call fcn.10010710
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1f4]
call fcn.10012bc0
lea eax, [ebp - 0x48]
push eax
lea ecx, [ebp - 0x1f4]
call fcn.10012cf0
lea ecx, [ebp - 0x1f4]
push ecx
lea edx, [ebp - 0x184]
push edx
lea ecx, [ebp - 0x33c]
call fcn.1000fd30
mov dword [ebp - 0x1b8], eax
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x1bc], eax
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x1bc]
push ecx
lea edx, [ebp - 0x31c]
push edx
mov ecx, dword [ebp - 0x15c]
add ecx, 0x18
call fcn.10010610
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x338]
call fcn.10010a70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1f4]
call fcn.10010a70
jmp 0x10011735
push str.Socket
lea eax, [ebp - 0x1c0]
push eax
lea ecx, [ebp - 0x174]
call fcn.10041c60
push str.Item
lea ecx, [ebp - 0x160]
push ecx
lea ecx, [ebp - 0x1c0]
call fcn.10041c60
jmp 0x10011b1a
lea edx, [ebp - 0x27c]
push edx
lea ecx, [ebp - 0x160]
call fcn.100425c0
mov eax, dword [eax]
mov dword [ebp - 0x160], eax
lea ecx, [ebp - 0x160]
call fcn.10041800
test eax, eax
je 0x10011ea3
xor ecx, ecx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], ecx
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x14], ecx
push 0
push 0x100686d8
lea edx, [ebp - 0x280]
push edx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov esi, eax
shl esi, 9
push 0
push str.Index
lea eax, [ebp - 0x284]
push eax
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
add esi, eax
mov word [ebp - 0x188], si
push 0
push str.OptionIndex
lea ecx, [ebp - 0x288]
push ecx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov dword [ebp - 0x28], eax
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push str.OptionValue
lea edx, [ebp - 0x28c]
push edx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b60
fstp dword [ebp - 0x24]
push ecx
xorps xmm0, xmm0
movss dword [esp], xmm0
push str.OptionProbability
lea eax, [ebp - 0x290]
push eax
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041b60
fstp dword [ebp - 0x20]
push 0
push str.MinLevel
lea ecx, [ebp - 0x294]
push ecx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x2c], al
push 0
push str.MaxLevel
lea edx, [ebp - 0x298]
push edx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x2b], al
push 0
push str.SeedMinLevel
lea eax, [ebp - 0x29c]
push eax
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x1c], al
push 0
push str.SeedMaxLevel
lea ecx, [ebp - 0x2a0]
push ecx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x1b], al
push 0
push str.SeedCountFire
lea edx, [ebp - 0x2d0]
push edx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov ecx, 1
shl ecx, 0
mov byte [ebp + ecx - 0x1a], al
push 0
push str.SeedCountWater
lea edx, [ebp - 0x2a8]
push edx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov ecx, 1
shl ecx, 1
mov byte [ebp + ecx - 0x1a], al
push 0
push str.SeedCountIce
lea edx, [ebp - 0x2ac]
push edx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov ecx, 1
imul edx, ecx, 3
mov byte [ebp + edx - 0x1a], al
push 0
push str.SeedCountWind
lea eax, [ebp - 0x2b0]
push eax
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov ecx, 1
shl ecx, 2
mov byte [ebp + ecx - 0x1a], al
push 0
push str.SeedCountLight
lea edx, [ebp - 0x2b4]
push edx
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov ecx, 1
imul edx, ecx, 5
mov byte [ebp + edx - 0x1a], al
push 0
push str.SeedCountEarth
lea eax, [ebp - 0x2b8]
push eax
lea ecx, [ebp - 0x160]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov ecx, 1
imul edx, ecx, 6
mov byte [ebp + edx - 0x1a], al
mov ax, word [ebp - 0x188]
mov word [ebp - 0x19c], ax
lea ecx, [ebp - 0x19c]
push ecx
lea edx, [ebp - 0x1ac]
push edx
mov ecx, dword [ebp - 0x15c]
add ecx, 0x20
call fcn.10012c60
lea eax, [ebp - 0x2bc]
push eax
mov ecx, dword [ebp - 0x15c]
add ecx, 0x20
call fcn.10012b20
push eax
lea ecx, [ebp - 0x1ac]
call fcn.10010c80
movzx ecx, al
test ecx, ecx
je 0x10011e0c
lea edx, [ebp - 0x2c]
push edx
lea ecx, [ebp - 0x1ac]
call fcn.10010c90
add eax, 4
mov ecx, eax
call fcn.10012cf0
jmp 0x10011e9e
lea ecx, [ebp - 0x20c]
call fcn.10010710
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x20c]
call fcn.10012bc0
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0x20c]
call fcn.10012cf0
lea ecx, [ebp - 0x20c]
push ecx
lea edx, [ebp - 0x188]
push edx
lea ecx, [ebp - 0x30c]
call fcn.1000fd30
mov dword [ebp - 0x1c4], eax
mov eax, dword [ebp - 0x1c4]
mov dword [ebp - 0x1c8], eax
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1c8]
push ecx
lea edx, [ebp - 0x344]
push edx
mov ecx, dword [ebp - 0x15c]
add ecx, 0x20
call fcn.10010610
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x308]
call fcn.10010a70
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x20c]
call fcn.10010a70
jmp 0x10011b00
push str.OptionText
lea eax, [ebp - 0x1d8]
push eax
lea ecx, [ebp - 0x174]
call fcn.10041c60
push 0x100687b4
lea ecx, [ebp - 0x178]
push ecx
lea ecx, [ebp - 0x1d8]
call fcn.10041c60
jmp 0x10011eed
lea edx, [ebp - 0x2c0]
push edx
lea ecx, [ebp - 0x178]
call fcn.100425c0
mov eax, dword [eax]
mov dword [ebp - 0x178], eax
lea ecx, [ebp - 0x178]
call fcn.10041800
test eax, eax
je 0x10011f9c
push 0
push str.OptionId
lea ecx, [ebp - 0x2c4]
push ecx
lea ecx, [ebp - 0x178]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
mov byte [ebp - 0x165], al
push 0x100684eb
push str.Title
lea edx, [ebp - 0x2c8]
push edx
lea ecx, [ebp - 0x178]
call fcn.10041bf0
mov ecx, eax
call fcn.10041bd0
push eax
movzx eax, byte [ebp - 0x165]
imul ecx, eax, 0x1c
mov edx, dword [ebp - 0x15c]
lea ecx, [edx + ecx + 0x28]
call fcn.1000d840
push 0
push str.ColorID
lea eax, [ebp - 0x2cc]
push eax
lea ecx, [ebp - 0x178]
call fcn.10041bf0
mov ecx, eax
call fcn.10041ba0
movzx ecx, byte [ebp - 0x165]
imul edx, ecx, 0x1c
mov ecx, dword [ebp - 0x15c]
mov byte [ecx + edx + 0x40], al
jmp 0x10011ed3
mov edx, dword [ebp - 0x17c]
mov dword [ebp - 0x1d0], edx
mov eax, dword [ebp - 0x1d0]
push eax
call fcn.10046df4
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x154]
call fcn.100417c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10046da7
mov esp, ebp
pop ebp
ret 4