Function at 0x4124a0
Capabilities:
Check http status code
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x466ae5
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push ebx
push esi
push edi
mov eax, dword [0x486540]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 4], 0
lea eax, [ebx + 0x190]
push dword [ebp + 8]
push dword [ebx + 0x188]
push str._s_s.lang
push eax
call fcn.00408310
add esp, 0x10
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414645
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 1
mov ecx, ebx
mov eax, dword [ebx]
call dword [eax + 0x6c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x30], vtable.CMenu.0
mov dword [ebp - 0x2c], 0
push 0
push ecx
mov byte [ebp - 4], 2
mov esi, esp
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x20], esi
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41464f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.FILE
mov ecx, esi
mov byte [ebp - 4], 3
call fcn.00402660
test al, al
jne 0x41256e
push 4
push str.FILE
mov ecx, esi
call fcn.00402840
push ecx
mov esi, esp
mov byte [ebp - 4], 4
mov dword [ebp - 0x20], esi
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414659
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.Menu
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.00402660
test al, al
jne 0x4125b3
push 4
push str.Menu
mov ecx, esi
call fcn.00402840
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 4
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 6
call fcn.00402400
mov byte [ebp - 4], 2
or edi, 0xffffffff
mov edx, dword [ebp - 0x18]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4125f4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov ecx, dword [ebp - 0x14]
mov esi, dword [sym.imp.USER32.dll_ModifyMenuW]
push 0
push 0x400
push 0
push dword [ecx + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414663
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.SETTINGS
mov byte [ebp - 4], 7
call fcn.00402660
test al, al
jne 0x412654
mov ecx, dword [ebp - 0x18]
push 8
push str.SETTINGS
call fcn.00402840
push ecx
mov byte [ebp - 4], 8
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41466d
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 9
call fcn.00402660
test al, al
jne 0x412699
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 8
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xa
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4126d7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 1
push 0x400
push 1
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414677
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE
mov byte [ebp - 4], 0xb
call fcn.00402660
test al, al
jne 0x412731
mov ecx, dword [ebp - 0x18]
push 7
push str.PROFILE
call fcn.00402840
push ecx
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414681
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0xd
call fcn.00402660
test al, al
jne 0x412776
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0xc
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xe
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4127b4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 2
push 0x400
push 2
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41468b
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.THEME
mov byte [ebp - 4], 0xf
call fcn.00402660
test al, al
jne 0x41280e
mov ecx, dword [ebp - 0x18]
push 5
push str.THEME
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414695
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x11
call fcn.00402660
test al, al
jne 0x412853
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x10
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x12
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412891
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 3
push 0x400
push 3
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41469f
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.HELP
mov byte [ebp - 4], 0x13
call fcn.00402660
test al, al
jne 0x4128eb
mov ecx, dword [ebp - 0x18]
push 4
push str.HELP
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146a9
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x15
call fcn.00402660
test al, al
jne 0x412930
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x14
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x16
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41296e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 4
push 0x400
push 4
push dword [eax + 4]
call esi
push 0
push ecx
mov esi, esp
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x20], esi
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146b3
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.LANGUAGE
mov ecx, esi
mov byte [ebp - 4], 0x17
call fcn.00402660
test al, al
jne 0x4129c8
push 8
push str.LANGUAGE
mov ecx, esi
call fcn.00402840
push ecx
mov esi, esp
mov byte [ebp - 4], 0x18
mov dword [ebp - 0x20], esi
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146bd
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.Menu
mov ecx, esi
mov byte [ebp - 4], 0x19
call fcn.00402660
test al, al
jne 0x412a0d
push 4
push str.Menu
mov ecx, esi
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x18
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x1a
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412a4b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [ebp - 0x10]
cmp dword [esi - 0xc], 0
jl 0x412a97
push 0x474928
push esi
call fcn.0044ca85
add esp, 8
test eax, eax
je 0x412a97
sub eax, esi
sar eax, 1
js 0x412a97
push 9
push 0x47493c
lea ecx, [ebp - 0x10]
call fcn.00402840
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
mov esi, dword [sym.imp.USER32.dll_ModifyMenuW]
push 5
push 0x400
push 5
push dword [eax + 4]
call esi
jmp 0x412adf
push str._Language_
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00418c10
mov esi, dword [sym.imp.USER32.dll_ModifyMenuW]
add esp, 0xc
push dword [eax]
mov eax, dword [ebp - 0x14]
push 5
push 0x400
push 5
push dword [eax + 4]
call esi
mov edx, dword [ebp - 0x1c]
mov eax, edi
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412adf
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push str._tAlt__F4
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146c7
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.FILE_EXIT
mov byte [ebp - 4], 0x1b
call fcn.00402660
test al, al
jne 0x412b2a
mov ecx, dword [ebp - 0x18]
push 9
push str.FILE_EXIT
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146d1
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x1d
call fcn.00402660
test al, al
jne 0x412b6f
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x1c
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x1e
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x1f
call fcn.00402400
mov byte [ebp - 4], 0x1e
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412bbe
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412bdc
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8003
push 0
push 0x8003
push dword [eax + 4]
call esi
push str._tCtrl__T
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146db
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.SAVE_TEXT
mov byte [ebp - 4], 0x20
call fcn.00402660
test al, al
jne 0x412c3e
mov ecx, dword [ebp - 0x18]
push 9
push str.SAVE_TEXT
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146e5
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x22
call fcn.00402660
test al, al
jne 0x412c83
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x21
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x23
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x24
call fcn.00402400
mov byte [ebp - 4], 0x23
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412cd2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412cf0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8033
push 0
push 0x8033
push dword [eax + 4]
call esi
push str._tCtrl__S
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146ef
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.SAVE_IMAGE
mov byte [ebp - 4], 0x25
call fcn.00402660
test al, al
jne 0x412d52
mov ecx, dword [ebp - 0x18]
push 0xa
push str.SAVE_IMAGE
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x26
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4146f9
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x27
call fcn.00402660
test al, al
jne 0x412d97
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x26
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x28
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x29
call fcn.00402400
mov byte [ebp - 4], 0x28
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412de6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412e04
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8034
push 0
push 0x8034
push dword [eax + 4]
call esi
push str._tCtrl__Shift__C
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414703
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.EDIT_COPY
mov byte [ebp - 4], 0x2a
call fcn.00402660
test al, al
jne 0x412e66
mov ecx, dword [ebp - 0x18]
push 9
push str.EDIT_COPY
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x2b
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41470d
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x2c
call fcn.00402660
test al, al
jne 0x412eab
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x2b
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x2d
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x2e
call fcn.00402400
mov byte [ebp - 4], 0x2d
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412efa
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412f18
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8009
push 0
push 0x8009
push dword [eax + 4]
call esi
mov eax, dword [ebp - 0x14]
push 1
push dword [eax + 4]
call dword [sym.imp.USER32.dll_GetSubMenu]
push eax
call fcn.0043cff7
test eax, eax
je 0x412f4a
mov eax, dword [eax + 4]
push eax
lea ecx, [ebp - 0x30]
call fcn.0043cf4f
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414717
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.TEST_DATA
mov byte [ebp - 4], 0x2f
call fcn.00402660
test al, al
jne 0x412f99
mov ecx, dword [ebp - 0x18]
push 9
push str.TEST_DATA
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x30
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414721
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x31
call fcn.00402660
test al, al
jne 0x412fde
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x30
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x32
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41301c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
push 0
push 0x400
push 0
push dword [ebp - 0x2c]
call esi
lea ecx, [ebp - 0x30]
call fcn.0043cfcd
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41472b
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.DEFAULT_RANDOM
mov byte [ebp - 4], 0x33
call fcn.00402660
test al, al
jne 0x41307b
mov ecx, dword [ebp - 0x18]
push 0xe
push str.DEFAULT_RANDOM
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x34
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414735
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x35
call fcn.00402660
test al, al
jne 0x4130c0
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x34
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x36
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4130fe
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x802f
push 0
push 0x802f
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41473f
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.ALL_ZERO
mov byte [ebp - 4], 0x37
call fcn.00402660
test al, al
jne 0x41315b
mov ecx, dword [ebp - 0x18]
push 8
push str.ALL_ZERO
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x38
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414749
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x39
call fcn.00402660
test al, al
jne 0x4131a0
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x38
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x3a
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4131de
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8030
push 0
push 0x8030
push dword [eax + 4]
call esi
cmp dword [ebx + 0x4b4], 1
mov ecx, ebx
jne 0x413207
call fcn.00417030
jmp 0x41320c
call fcn.00416f40
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414753
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.DEFAULT
mov byte [ebp - 4], 0x3b
call fcn.00402660
test al, al
jne 0x413252
mov ecx, dword [ebp - 0x18]
push 7
push str.DEFAULT
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x3c
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41475d
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Dialog
mov byte [ebp - 4], 0x3d
call fcn.00402660
test al, al
jne 0x413297
mov ecx, dword [ebp - 0x18]
push 6
push str.Dialog
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x3c
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x3e
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4132d5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8036
push 0
push 0x8036
push dword [eax + 4]
call esi
mov ecx, ebx
call fcn.004168c0
push str._tCtrl__Q
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414767
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.SETTINGS
mov byte [ebp - 4], 0x3f
call fcn.00402660
test al, al
jne 0x41333e
mov ecx, dword [ebp - 0x18]
push 8
push str.SETTINGS
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x40
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414771
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x41
call fcn.00402660
test al, al
jne 0x413383
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x40
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x42
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x43
call fcn.00402400
mov byte [ebp - 4], 0x42
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4133d2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4133f0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8032
push 0
push 0x8032
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41477b
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE_DEFAULT
mov byte [ebp - 4], 0x44
call fcn.00402660
test al, al
jne 0x41344d
mov ecx, dword [ebp - 0x18]
push 0xf
push str.PROFILE_DEFAULT
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x45
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414785
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x46
call fcn.00402660
test al, al
jne 0x413492
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x45
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x47
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4134d0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8426
push 0
push 0x8426
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x41478f
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE_PEAK
mov byte [ebp - 4], 0x48
call fcn.00402660
test al, al
jne 0x41352d
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_PEAK
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x49
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414799
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x4a
call fcn.00402660
test al, al
jne 0x413572
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x49
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x4b
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4135b0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8427
push 0
push 0x8427
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147a3
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE_REAL
mov byte [ebp - 4], 0x4c
call fcn.00402660
test al, al
jne 0x41360d
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_REAL
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x4d
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147ad
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x4e
call fcn.00402660
test al, al
jne 0x413652
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x4d
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x4f
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413690
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8428
push 0
push 0x8428
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147b7
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE_DEMO
mov byte [ebp - 4], 0x50
call fcn.00402660
test al, al
jne 0x4136ed
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_DEMO
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x51
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147c1
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x52
call fcn.00402660
test al, al
jne 0x413732
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x51
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x53
call fcn.00402400
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413770
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8429
push 0
push 0x8429
push dword [eax + 4]
call esi
push str.__Mix_
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147cb
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE_DEFAULT
mov byte [ebp - 4], 0x54
call fcn.00402660
test al, al
jne 0x4137d2
mov ecx, dword [ebp - 0x18]
push 0xf
push str.PROFILE_DEFAULT
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x55
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147d5
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x56
call fcn.00402660
test al, al
jne 0x413817
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x55
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x57
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x58
call fcn.00402400
mov byte [ebp - 4], 0x57
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413866
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413884
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x842a
push 0
push 0x842a
push dword [eax + 4]
call esi
push str.__Mix_
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147df
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE_PEAK
mov byte [ebp - 4], 0x59
call fcn.00402660
test al, al
jne 0x4138e6
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_PEAK
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x5a
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147e9
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x5b
call fcn.00402660
test al, al
jne 0x41392b
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x5a
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x5c
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x5d
call fcn.00402400
mov byte [ebp - 4], 0x5c
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41397a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413998
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x842b
push 0
push 0x842b
push dword [eax + 4]
call esi
push str.__Mix_
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147f3
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.PROFILE_REAL
mov byte [ebp - 4], 0x5e
call fcn.00402660
test al, al
jne 0x4139fa
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_REAL
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x5f
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x4147fd
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x60
call fcn.00402660
test al, al
jne 0x413a3f
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x5f
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x61
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x62
call fcn.00402400
mov byte [ebp - 4], 0x61
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413a8e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413aac
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x842c
push 0
push 0x842c
push dword [eax + 4]
call esi
push 0x474b1c
push str.__Web_
push 0
push ecx
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414807
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.HELP
mov byte [ebp - 4], 0x63
call fcn.00402660
test al, al
jne 0x413b13
mov ecx, dword [ebp - 0x18]
push 4
push str.HELP
call fcn.00402840
push ecx
mov byte [ebp - 4], 0x64
mov dword [ebp - 0x18], esp
call fcn.00430fae
mov ecx, eax
test ecx, ecx
je 0x414811
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.Menu
mov byte [ebp - 4], 0x65
call fcn.00402660
test al, al
jne 0x413b58
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402840
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x64
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.004211b0
push eax
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x66
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x67
push eax
call fcn.00418c10
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x68
call fcn.00402400
mov byte [ebp - 4], 0x67
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413bb8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x66
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x413bd6
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
push 0x80004005
call fcn.00402d40
nop
or byte [eax + 0x41], al
add byte [ecx], dl
inc eax
inc ecx
add byte [edx], bl
inc eax
inc ecx
add byte [ebx], ah
inc eax
inc ecx
add byte [eax + eax*2], ch
inc ecx
add byte [0x3e004140], dh
inc eax
inc ecx
add byte [eax], al
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
add dword [esi], eax
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
add al, byte [esi]
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
add eax, dword [esi]
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
add al, 6
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
push es
add eax, 0xbf00498d
inc eax
inc ecx
add byte [ecx - 0x6dffbec0], cl
inc eax
inc ecx
add byte [ebx - 0x5bffbec0], bl
inc eax
inc ecx
add byte [ebp - 0x49ffbec0], ch
inc eax
inc ecx
add ah, cl
int3