Function at 0x40b880
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
push ebx
push esi
push edi
add esp, 0xfffff784
mov edi, dword [esp + 0x898]
mov esi, dword [esp + 0x89c]
mov ebp, dword [esp + 0x8a0]
mov ebx, dword [esp + 0x8a8]
mov edx, dword [esp + 0x8ac]
mov al, byte [ebx]
test al, al
je 0x40ba65
push dword [esp + 0x894]
push dword [esp + 0x894]
push 9
lea ecx, [esp + 0x87c]
push ecx
mov dword [esp + 0x10], edx
call fcn.0041f400
mov edx, dword [esp]
push 1
lea eax, [esp + 0x874]
push eax
mov dword [esp + 8], edx
call fcn.00409d30
mov edx, dword [esp]
test eax, eax
je 0x40ba61
mov ecx, dword [eax + 4]
jmp 0x40ba57
lea eax, [esp + 0x228]
push eax
push 0x1f4
mov eax, dword [ecx + 8]
add eax, 0x12
push eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
call fcn.00401020
mov edx, dword [esp + 4]
mov ecx, dword [esp]
test eax, eax
jl 0x40ba55
cmp byte [esp + 0x334], 5
jne 0x40ba55
mov al, byte [esp + 0x384]
test al, al
jne 0x40ba55
push esi
push edi
push 9
lea eax, [esp + 0x2a9]
push eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00468b00
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub esp, 0xfffffff0
test eax, eax
jne 0x40ba55
push 0x43
lea eax, [esp + 0x340]
push eax
push dword [esp + 0x8ac]
push ebp
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00468b00
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub esp, 0xfffffff0
test eax, eax
jne 0x40ba55
mov al, byte [ebx]
test al, al
je 0x40ba45
push edx
push ebx
push 5
lea eax, [esp + 0x38b]
push eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00468b00
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub esp, 0xfffffff0
test eax, eax
je 0x40ba67
push 5
lea eax, [esp + 0x383]
push eax
push 5
lea eax, [esp + 0x22c]
push eax
push 5
lea eax, [esp + 0x22c]
push eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], edx
call fcn.00409e80
mov edx, dword [esp + 4]
mov ecx, dword [esp]
test al, al
je 0x40ba55
push edx
push ebx
push 5
lea eax, [esp + 0x22c]
push eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call fcn.00468b00
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
sub esp, 0xfffffff0
test eax, eax
jne 0x40ba55
jmp 0x40ba67
mov eax, dword [0x4959dc]
add eax, 0x1e
cmp dword [0x473008], eax
ja 0x40ba67
mov ecx, dword [ecx]
test ecx, ecx
jne 0x40b904
jmp 0x40ba67
xor ecx, ecx
jmp 0x40ba67
xor ecx, ecx
test ecx, ecx
je 0x40bb30
mov al, byte [0x473015]
test al, al
je 0x40bd3a
push 0xa
push 0x46987c
mov dword [esp + 8], edx
call fcn.0043c510
mov edx, dword [esp]
push dword [esp + 0x894]
push dword [esp + 0x894]
mov dword [esp + 8], edx
call fcn.0043c510
mov edx, dword [esp]
push 2
push 0x469878
mov dword [esp + 8], edx
call fcn.0043c510
mov edx, dword [esp]
push esi
push edi
mov dword [esp + 8], edx
call fcn.0043c510
mov edx, dword [esp]
push 2
push 0x469874
mov dword [esp + 8], edx
call fcn.0043c510
mov edx, dword [esp]
push dword [esp + 0x8a4]
push ebp
mov dword [esp + 8], edx
call fcn.0043c510
mov edx, dword [esp]
push 2
push 0x469870
mov dword [esp + 8], edx
call fcn.0043c510
mov edx, dword [esp]
push edx
push ebx
call fcn.0043c510
push 2
push 0x46986c
call fcn.0043c510
push 1
lea eax, [esp + 0x8c0]
push eax
call fcn.0043c510
call fcn.0043c620
jmp 0x40bd3a
mov al, byte [esp + 0x8b4]
test al, al
jne 0x40bb87
push 0x69
mov dword [esp + 4], edx
call fcn.0043eae0
mov edx, dword [esp]
test al, al
je 0x40bd3a
push esi
push edi
push dword [esp + 0x89c]
push dword [esp + 0x89c]
mov dword [esp + 0x10], edx
call fcn.0041faa0
mov edx, dword [esp]
test al, al
je 0x40bb87
push 0x6a
mov dword [esp + 4], edx
call fcn.0043eae0
mov edx, dword [esp]
test al, al
je 0x40bd3a
push 0x68
mov dword [esp + 4], edx
call fcn.0043eae0
mov edx, dword [esp]
test al, al
jne 0x40bcae
cmp dword [esp + 0x8b8], 2
je 0x40bbec
cmp dword [esp + 0x8b8], 1
je 0x40bbd2
mov dword [esp + 0x20], 0x7373654d
mov dword [esp + 0x24], 0x20656761
mov dword [esp + 0x28], 0x6d6f7266
mov word [esp + 0x2c], 0x20
jmp 0x40bc18
mov dword [esp + 0x20], 0x72657551
mov dword [esp + 0x24], 0x72662079
mov dword [esp + 0x28], 0x206d6f
jmp 0x40bc18
mov dword [esp + 0x20], 0x6f747541
mov dword [esp + 0x24], 0x77736e61
mov dword [esp + 0x28], 0x64657265
mov dword [esp + 0x2c], 0x6f726620
mov word [esp + 0x30], 0x206d
mov byte [esp + 0x32], 0
push dword [esp + 0x894]
push dword [esp + 0x894]
push 0x1f5
lea eax, [esp + 0x2c]
push eax
mov dword [esp + 0x10], edx
call fcn.0041f450
mov edx, dword [esp]
push 5
push 0x4698a0
push 0x1f5
lea ecx, [esp + 0x2c]
push ecx
mov dword [esp + 0x10], edx
call fcn.0041f450
mov edx, dword [esp]
push esi
push edi
push 0x1f5
lea eax, [esp + 0x2c]
push eax
mov dword [esp + 0x10], edx
call fcn.0041f450
mov edx, dword [esp]
push 0x15
push str.__click_on_M_Button_
push 0x1f5
lea ecx, [esp + 0x2c]
push ecx
mov dword [esp + 0x10], edx
call fcn.0041f450
mov edx, dword [esp]
push 0x1f5
lea eax, [esp + 0x24]
push eax
push 0x79
push 0
push 6
push 5
push 0
mov dword [esp + 0x1c], edx
call fcn.0043cdc0
mov edx, dword [esp]
lea eax, [esp + 0x1c]
push eax
push 9
lea ecx, [esp + 0x18]
push ecx
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x8b4]
push ebp
push esi
push edi
push dword [esp + 0x8b4]
push dword [esp + 0x8b4]
mov dword [esp + 0x28], edx
call fcn.0040b630
mov edx, dword [esp]
push 9
lea ecx, [esp + 0x14]
push ecx
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x28]
push dword [esp + 0x8c8]
push dword [esp + 0x8d0]
push dword [0x473008]
push edx
push ebx
push dword [esp + 0x8c8]
push ebp
push esi
push edi
push dword [esp + 0x8c8]
push dword [esp + 0x8c8]
call fcn.0040ad10
push 0
mov ecx, dword [0x493e2c]
inc ecx
mov dword [0x493e2c], ecx
call fcn.0040acb0
sub esp, 0xfffff784
pop edi
pop esi
pop ebx
pop ebp
ret 0x30