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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x46503d
mov eax, dword fs:[0]
push eax
sub esp, 0x24
push ebx
push esi
push edi
mov eax, dword [0x484540]
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.00408490
add esp, 0x10
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4134ee
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4134f8
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.00402a30
test al, al
jne 0x41176e
push 4
push str.FILE
mov ecx, esi
call fcn.00402c10
push ecx
mov esi, esp
mov byte [ebp - 4], 4
mov dword [ebp - 0x20], esi
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413502
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.00402a30
test al, al
jne 0x4117b3
push 4
push str.Menu
mov ecx, esi
call fcn.00402c10
lea eax, [ebp - 0x18]
mov byte [ebp - 4], 4
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 6
call fcn.004027d0
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 0x4117f4
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41350c
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.00402a30
test al, al
jne 0x411854
mov ecx, dword [ebp - 0x18]
push 8
push str.SETTINGS
call fcn.00402c10
push ecx
mov byte [ebp - 4], 8
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413516
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.00402a30
test al, al
jne 0x411899
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 8
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xa
call fcn.004027d0
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 0x4118d7
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413520
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.00402a30
test al, al
jne 0x411931
mov ecx, dword [ebp - 0x18]
push 7
push str.PROFILE
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41352a
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.00402a30
test al, al
jne 0x411976
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0xc
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0xe
call fcn.004027d0
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 0x4119b4
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413534
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.00402a30
test al, al
jne 0x411a0e
mov ecx, dword [ebp - 0x18]
push 5
push str.THEME
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x10
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41353e
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.00402a30
test al, al
jne 0x411a53
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x10
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x12
call fcn.004027d0
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 0x411a91
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413548
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.00402a30
test al, al
jne 0x411aeb
mov ecx, dword [ebp - 0x18]
push 4
push str.HELP
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x14
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413552
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.00402a30
test al, al
jne 0x411b30
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x14
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x16
call fcn.004027d0
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 0x411b6e
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41355c
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.00402a30
test al, al
jne 0x411bc8
push 8
push str.LANGUAGE
mov ecx, esi
call fcn.00402c10
push ecx
mov esi, esp
mov byte [ebp - 4], 0x18
mov dword [ebp - 0x20], esi
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413566
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.00402a30
test al, al
jne 0x411c0d
push 4
push str.Menu
mov ecx, esi
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x18
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x1a
call fcn.004027d0
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 0x411c4b
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 0x411c97
push 0x473a48
push esi
call fcn.0044b0b5
add esp, 8
test eax, eax
je 0x411c97
sub eax, esi
sar eax, 1
js 0x411c97
push 9
push str.Language
lea ecx, [ebp - 0x10]
call fcn.00402c10
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 0x411cdf
push str._Language_
lea eax, [ebp - 0x10]
push eax
lea eax, [ebp - 0x1c]
push eax
call fcn.00417110
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 0x411cdf
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413570
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.00402a30
test al, al
jne 0x411d2a
mov ecx, dword [ebp - 0x18]
push 9
push str.FILE_EXIT
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41357a
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.00402a30
test al, al
jne 0x411d6f
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x1c
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x1e
push eax
call fcn.00417110
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x1f
call fcn.004027d0
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 0x411dbe
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 0x411ddc
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413584
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.00402a30
test al, al
jne 0x411e3e
mov ecx, dword [ebp - 0x18]
push 9
push str.SAVE_TEXT
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x21
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41358e
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.00402a30
test al, al
jne 0x411e83
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x21
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x23
push eax
call fcn.00417110
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x24
call fcn.004027d0
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 0x411ed2
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 0x411ef0
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413598
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.00402a30
test al, al
jne 0x411f52
mov ecx, dword [ebp - 0x18]
push 0xa
push str.SAVE_IMAGE
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x26
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135a2
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.00402a30
test al, al
jne 0x411f97
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x26
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x28
push eax
call fcn.00417110
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x29
call fcn.004027d0
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 0x411fe6
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 0x412004
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135ac
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.00402a30
test al, al
jne 0x412066
mov ecx, dword [ebp - 0x18]
push 9
push str.EDIT_COPY
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x2b
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135b6
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.00402a30
test al, al
jne 0x4120ab
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x2b
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x2d
push eax
call fcn.00417110
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x2e
call fcn.004027d0
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 0x4120fa
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 0x412118
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.0043b627
test eax, eax
je 0x41214a
mov eax, dword [eax + 4]
push eax
lea ecx, [ebp - 0x30]
call fcn.0043b57f
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135c0
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.00402a30
test al, al
jne 0x412199
mov ecx, dword [ebp - 0x18]
push 9
push str.TEST_DATA
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x30
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135ca
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.00402a30
test al, al
jne 0x4121de
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x30
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x32
call fcn.004027d0
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 0x41221c
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.0043b5fd
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135d4
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.00402a30
test al, al
jne 0x41227b
mov ecx, dword [ebp - 0x18]
push 0xe
push str.DEFAULT_RANDOM
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x34
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135de
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.00402a30
test al, al
jne 0x4122c0
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x34
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x36
call fcn.004027d0
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 0x4122fe
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135e8
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.00402a30
test al, al
jne 0x41235b
mov ecx, dword [ebp - 0x18]
push 8
push str.ALL_ZERO
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x38
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135f2
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.00402a30
test al, al
jne 0x4123a0
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x38
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x3a
call fcn.004027d0
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 0x4123de
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 + 0x424], 1
mov ecx, ebx
jne 0x412407
call fcn.00415a00
jmp 0x41240c
call fcn.00415910
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4135fc
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.00402a30
test al, al
jne 0x412452
mov ecx, dword [ebp - 0x18]
push 7
push str.DEFAULT
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x3c
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413606
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.00402a30
test al, al
jne 0x412497
mov ecx, dword [ebp - 0x18]
push 6
push str.Dialog
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x3c
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x3e
call fcn.004027d0
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 0x4124d5
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.00415290
push str._tCtrl__Q
push 0
push ecx
mov dword [ebp - 0x24], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413610
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.00402a30
test al, al
jne 0x41253e
mov ecx, dword [ebp - 0x18]
push 8
push str.SETTINGS
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x40
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41361a
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.00402a30
test al, al
jne 0x412583
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x40
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x42
push eax
call fcn.00417110
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x43
call fcn.004027d0
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 0x4125d2
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 0x4125f0
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413624
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.00402a30
test al, al
jne 0x41264d
mov ecx, dword [ebp - 0x18]
push 0xf
push str.PROFILE_DEFAULT
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x45
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41362e
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.00402a30
test al, al
jne 0x412692
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x45
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x47
call fcn.004027d0
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 0x4126d0
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413638
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.00402a30
test al, al
jne 0x41272d
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_PEAK
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x49
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413642
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.00402a30
test al, al
jne 0x412772
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x49
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x4b
call fcn.004027d0
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 0x4127b0
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41364c
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.00402a30
test al, al
jne 0x41280d
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_REAL
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x4d
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413656
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.00402a30
test al, al
jne 0x412852
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x4d
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x4f
call fcn.004027d0
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 0x412890
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.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413660
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.00402a30
test al, al
jne 0x4128ed
mov ecx, dword [ebp - 0x18]
push 0xc
push str.PROFILE_DEMO
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x51
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41366a
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.00402a30
test al, al
jne 0x412932
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x51
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x53
call fcn.004027d0
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 0x412970
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 0x473c2c
push str.__Web_
push 0
push ecx
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413674
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], 0x54
call fcn.00402a30
test al, al
jne 0x4129d7
mov ecx, dword [ebp - 0x18]
push 4
push str.HELP
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x55
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41367e
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.00402a30
test al, al
jne 0x412a1c
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x55
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x57
push eax
call fcn.00417110
add esp, 0xc
push eax
lea eax, [ebp - 0x20]
mov byte [ebp - 4], 0x58
push eax
call fcn.00417110
add esp, 0xc
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x59
call fcn.004027d0
mov byte [ebp - 4], 0x58
mov eax, edi
mov edx, dword [ebp - 0x20]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412a7c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x57
mov eax, edi
mov edx, dword [ebp - 0x1c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412a9a
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 - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412ab8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0xe146
push 0
push 0xe146
push dword [eax + 4]
call esi
push 0
push ecx
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413688
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.HELP_ABOUT
mov byte [ebp - 4], 0x5a
call fcn.00402a30
test al, al
jne 0x412b15
mov ecx, dword [ebp - 0x18]
push 0xa
push str.HELP_ABOUT
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x5b
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x413692
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], 0x5c
call fcn.00402a30
test al, al
jne 0x412b5a
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x5b
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x5d
call fcn.004027d0
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412b98
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8004
push 0
push 0x8004
push dword [eax + 4]
call esi
mov eax, dword [ebp - 0x14]
push 3
push dword [eax + 4]
call dword [sym.imp.USER32.dll_GetSubMenu]
push eax
call fcn.0043b627
test eax, eax
je 0x412bca
mov eax, dword [eax + 4]
push eax
lea ecx, [ebp - 0x30]
call fcn.0043b57f
push 0
push ecx
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x41369c
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.ZOOM
mov byte [ebp - 4], 0x5e
call fcn.00402a30
test al, al
jne 0x412c19
mov ecx, dword [ebp - 0x18]
push 4
push str.ZOOM
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x5f
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4136a6
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.00402a30
test al, al
jne 0x412c5e
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x5f
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x61
call fcn.004027d0
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412c9c
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.0043b5fd
push 0
push ecx
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4136b0
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x18]
add eax, 0x10
mov dword [ecx], eax
push str.AUTO
mov byte [ebp - 4], 0x62
call fcn.00402a30
test al, al
jne 0x412cfb
mov ecx, dword [ebp - 0x18]
push 4
push str.AUTO
call fcn.00402c10
push ecx
mov byte [ebp - 4], 0x63
mov dword [ebp - 0x18], esp
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4136ba
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], 0x64
call fcn.00402a30
test al, al
jne 0x412d40
mov ecx, dword [ebp - 0x18]
push 4
push str.Menu
call fcn.00402c10
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 0x63
push eax
mov ecx, ebx
mov byte [ebp - 4], 2
call fcn.0041f700
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 0x65
call fcn.004027d0
mov byte [ebp - 4], 2
mov eax, edi
mov edx, dword [ebp - 0x24]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x412d7e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x10]
mov eax, dword [ebp - 0x14]
push 0x8411
push 0
push 0x8411
push dword [eax + 4]
call esi
push str._tCtrl__F
push 0
push ecx
mov esi, esp
mov dword [ebp - 0x28], esp
mov dword [ebp - 0x1c], esi
call fcn.0042f5de
mov ecx, eax
test ecx, ecx
je 0x4136c4
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
push 0x80004005
call fcn.00403110
int3