Function at 0x411148
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push 0xffffffffffffffff
push 0x4eb8e7
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
push esi
mov esi, ecx
push edi
lea edi, [esi + 0xd0]
mov dword [esp + 0xc], esi
mov dword [esi], vtable.CMainFrame.1.0
mov dword [edi], vtable.CMainFrame.0
lea ecx, [esi + 0x1694]
mov dword [esp + 0x18], 0x3e
call fcn.0040bf40
lea ecx, [esi + 0xc54]
mov byte [esp + 0x18], 0x3d
call fcn.0042f150
lea ecx, [esi + 0xaa0]
mov byte [esp + 0x18], 0x3c
call fcn.00439890
mov byte [esp + 0x18], 0x3b
lea ecx, [esi + 0x878]
call fcn.0043e9a0
lea ecx, [esi + 0x85c]
mov byte [esp + 0x18], 0x3a
call fcn.0040bf40
lea ecx, [esi + 0x6f8]
mov byte [esp + 0x18], 0x39
call fcn.0043d880
lea ecx, [esi + 0x634]
mov byte [esp + 0x18], 0x38
call fcn.00436d90
lea ecx, [esi + 0x570]
mov byte [esp + 0x18], 0x37
call fcn.00436d90
lea ecx, [esi + 0x468]
mov byte [esp + 0x18], 0x36
call fcn.00442090
lea ecx, [esi + 0x3a0]
mov byte [esp + 0x18], 0x35
call fcn.0043cbd0
lea ecx, [esi + 0x304]
mov byte [esp + 0x18], 0x34
call fcn.00402e30
lea ecx, [esi + 0x2b0]
mov byte [esp + 0x18], 0x33
call fcn.004ce236
mov eax, dword [esi + 0x2ac]
test eax, eax
mov byte [esp + 0x18], 0x32
je 0x41123a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x2a8]
test eax, eax
mov byte [esp + 0x18], 0x31
je 0x41124f
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x29c]
sub eax, 0x10
mov byte [esp + 0x18], 0x30
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x411274
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esi + 0x298]
sub eax, 0x10
mov byte [esp + 0x18], 0x2f
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x411299
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esi + 0x288]
test eax, eax
mov byte [esp + 0x18], 0x2e
je 0x4112ae
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [esi + 0x270]
call fcn.004056c0
lea ecx, [esi + 0x260]
call fcn.004056c0
lea ecx, [esi + 0x258]
mov byte [esp + 0x18], 0x2b
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x250]
mov byte [esp + 0x18], 0x2a
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x248]
mov byte [esp + 0x18], 0x29
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x240]
mov byte [esp + 0x18], 0x28
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x238]
mov byte [esp + 0x18], 0x27
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x230]
mov byte [esp + 0x18], 0x26
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x220]
call fcn.00436d70
lea ecx, [esi + 0x218]
mov byte [esp + 0x18], 0x24
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x210]
mov byte [esp + 0x18], 0x23
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x208]
mov byte [esp + 0x18], 0x22
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x200]
mov byte [esp + 0x18], 0x21
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x1f8]
mov byte [esp + 0x18], 0x20
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x1f0]
mov byte [esp + 0x18], 0x1f
mov dword [ecx], vtable.CMenu.0
call fcn.004d50fc
lea ecx, [esi + 0x1bc]
call fcn.0040af70
lea ecx, [esi + 0x1a0]
call fcn.0040af10
lea edx, [esi + 0x188]
push edx
call dword [sym.imp.KERNEL32.DLL_DeleteCriticalSection]
mov eax, dword [esi + 0x184]
test eax, eax
mov byte [esp + 0x18], 0x1b
je 0x41140f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x180]
test eax, eax
mov byte [esp + 0x18], 0x1a
je 0x411424
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x17c]
test eax, eax
mov byte [esp + 0x18], 0x19
je 0x411439
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x178]
test eax, eax
mov byte [esp + 0x18], 0x18
je 0x41144e
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x174]
test eax, eax
mov byte [esp + 0x18], 0x17
je 0x411463
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x170]
test eax, eax
mov byte [esp + 0x18], 0x16
je 0x411478
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x16c]
test eax, eax
mov byte [esp + 0x18], 0x15
je 0x41148d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x168]
test eax, eax
mov byte [esp + 0x18], 0x14
je 0x4114a2
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x164]
test eax, eax
mov byte [esp + 0x18], 0x13
je 0x4114b7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x160]
test eax, eax
mov byte [esp + 0x18], 0x12
je 0x4114cc
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x15c]
test eax, eax
mov byte [esp + 0x18], 0x11
je 0x4114e1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x158]
sub eax, 0x10
mov byte [esp + 0x18], 0x10
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x411506
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esi + 0x154]
sub eax, 0x10
mov byte [esp + 0x18], 0xf
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x41152b
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
call dword [edx + 4]
mov eax, dword [esi + 0x150]
test eax, eax
mov byte [esp + 0x18], 0xe
je 0x411540
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x14c]
test eax, eax
mov byte [esp + 0x18], 0xd
je 0x411555
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x148]
test eax, eax
mov byte [esp + 0x18], 0xc
je 0x41156a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x144]
test eax, eax
mov byte [esp + 0x18], 0xb
je 0x41157f
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x140]
test eax, eax
mov byte [esp + 0x18], 0xa
je 0x411594
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x13c]
test eax, eax
mov byte [esp + 0x18], 9
je 0x4115a9
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x138]
test eax, eax
mov byte [esp + 0x18], 8
je 0x4115be
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x134]
test eax, eax
mov byte [esp + 0x18], 7
je 0x4115d3
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x130]
test eax, eax
mov byte [esp + 0x18], 6
je 0x4115e8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x12c]
test eax, eax
mov byte [esp + 0x18], 5
je 0x4115fd
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x128]
test eax, eax
mov byte [esp + 0x18], 4
je 0x411612
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x124]
test eax, eax
mov byte [esp + 0x18], 3
je 0x411627
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov eax, dword [esi + 0x120]
test eax, eax
mov byte [esp + 0x18], 2
je 0x41163c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [esi + 0x11c]
test eax, eax
mov byte [esp + 0x18], 1
je 0x411651
mov edx, dword [eax]
push eax
call dword [edx + 8]
mov ecx, edi
mov byte [esp + 0x18], 0
call fcn.00460240
mov ecx, esi
mov dword [esp + 0x18], 0xffffffff
call fcn.004e271f
mov ecx, dword [esp + 0x10]
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x14
ret