Function at 0x450edc
Capabilities:
Contain obfuscated stackstrings
Print debug messages

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x37
push 0
push 0
dec ecx
jne 0x450ee4
push ecx
push ebx
push esi
push edi
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x45136f
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [0x4b7910], 1
xor eax, eax
push ebp
push 0x45132d
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.004027e4
mov edx, dword [0x409db0]
mov dword [ebp - 0x24], edx
mov edx, dword [0x42b888]
mov dword [ebp - 0x20], edx
lea edx, [ebp - 0x24]
mov ecx, 1
call fcn.00450150
test al, al
je 0x450f47
call fcn.00404200
jmp 0x451334
call fcn.004241f8
test al, al
jne 0x450f63
call fcn.0044fb54
test al, al
jne 0x450f63
call fcn.00404200
jmp 0x451334
call fcn.00402804
mov ebx, eax
call fcn.004027e4
mov edx, dword [0x409d48]
call fcn.00403a90
test al, al
je 0x450fc5
call fcn.004027e4
call fcn.00450a20
test al, al
je 0x450f93
test ebx, ebx
je 0x450f93
sub ebx, 5
call fcn.004027e4
mov edx, dword [eax + 4]
lea eax, [ebp - 0x18]
call fcn.00404854
call fcn.004027e4
mov eax, dword [eax]
lea edx, [ebp - 0x124]
call fcn.00403854
lea edx, [ebp - 0x124]
lea eax, [ebp - 0xc]
call fcn.00404a20
jmp 0x450fe2
lea eax, [ebp - 0x18]
mov edx, 0x451388
call fcn.00404854
lea eax, [ebp - 0x18]
call fcn.004233d8
lea eax, [ebp - 0xc]
call fcn.004047bc
mov eax, dword [0x4b7e60]
call fcn.0044feac
test al, al
je 0x451012
lea edx, [ebp - 0x124]
mov eax, dword [0x4b7e60]
mov eax, dword [eax]
call fcn.00403854
lea edx, [ebp - 0x124]
lea eax, [ebp - 8]
call fcn.00404a20
jmp 0x45101a
lea eax, [ebp - 8]
call fcn.004047bc
lea eax, [ebp - 0x14]
push eax
mov eax, dword [ebp - 4]
mov dword [ebp - 0x13c], eax
mov byte [ebp - 0x138], 0xb
mov esi, ebx
mov eax, esi
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x140]
mov eax, 8
call fcn.0040aea0
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x12c], eax
mov byte [ebp - 0x128], 0xb
lea edx, [ebp - 0x13c]
mov ecx, 2
mov eax, 0x4513a8
call fcn.0040c0bc
mov eax, dword [ebp - 0x14]
call fcn.00404c98
push eax
call sub.kernel32.dll_OutputDebugStringA
lea eax, [ebp - 0x1c]
call fcn.004047bc
mov edx, 0x20
mov eax, esi
call fcn.00423ab8
test al, al
je 0x4510e7
mov edi, esi
add esi, 0x20
dec esi
sub esi, edi
jb 0x4510e7
inc esi
push dword [ebp - 0x1c]
push 0x4513e4
lea ecx, [ebp - 0x144]
xor eax, eax
mov al, byte [edi]
mov edx, 2
call fcn.0040ae78
push dword [ebp - 0x144]
push 0x4513f0
lea eax, [ebp - 0x1c]
mov edx, 4
call fcn.00404b58
inc edi
dec esi
jne 0x4510af
lea eax, [ebp - 0x14]
push eax
mov eax, 0x4513fc
mov dword [ebp - 0x19c], eax
mov byte [ebp - 0x198], 0xb
call fcn.0040d10c
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x1a0]
call fcn.00450618
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x194], eax
mov byte [ebp - 0x190], 0xb
lea eax, [ebp - 0x1a4]
call fcn.0044f2f8
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x18c], eax
mov byte [ebp - 0x188], 0xb
mov eax, 0x451410
mov dword [ebp - 0x184], eax
mov byte [ebp - 0x180], 0xb
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x17c], eax
mov byte [ebp - 0x178], 0xb
mov eax, dword [ebp - 4]
mov dword [ebp - 0x174], eax
mov byte [ebp - 0x170], 0xb
mov eax, dword [ebp - 8]
mov dword [ebp - 0x16c], eax
mov byte [ebp - 0x168], 0xb
lea edx, [ebp - 0x1a8]
mov eax, ebx
call fcn.00450d58
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x164], eax
mov byte [ebp - 0x160], 0xb
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x15c], eax
mov byte [ebp - 0x158], 0xb
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x154], eax
mov byte [ebp - 0x150], 0xb
lea eax, [ebp - 0x1ac]
call fcn.00450a44
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x14c], eax
mov byte [ebp - 0x148], 0xb
lea edx, [ebp - 0x19c]
mov ecx, 0xa
mov eax, 0x451424
call fcn.0040c0bc
lea edx, [ebp - 0x1b0]
xor eax, eax
call fcn.00402bd4
mov eax, dword [ebp - 0x1b0]
lea ecx, [ebp - 0x10]
mov edx, 0x4514dc
call fcn.0040b418
lea eax, [ebp - 0x10]
xor ecx, ecx
mov dl, 1
call fcn.00424600
test al, al
jne 0x451234
call fcn.00404200
jmp 0x451334
mov dl, 1
mov eax, dword [0x415d34]
call fcn.004038d4
mov ebx, eax
mov edx, dword [ebp - 0x14]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov edx, dword [ebp - 0x10]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x74]
mov eax, ebx
call fcn.00403904
push 0x242014
push 0x4514e4
lea eax, [ebp - 0x1b4]
push eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
lea edx, [ebp - 0x24]
xor ecx, ecx
mov eax, 0x451504
call fcn.0040c0bc
mov eax, dword [ebp - 0x1b4]
call fcn.00404c98
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x451318
lea edx, [ebp - 0x1b8]
xor eax, eax
call fcn.00402bd4
mov eax, dword [ebp - 0x1b8]
lea ecx, [ebp - 0x10]
mov edx, 0x4514dc
call fcn.0040b418
mov eax, dword [ebp - 0x10]
push eax
mov ecx, 0x45157c
mov edx, 0x45157c
mov eax, 0x4515a8
call fcn.00463de8
test al, al
jne 0x451318
push 0x242030
push 0x4515c0
lea eax, [ebp - 0x1bc]
push eax
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
lea edx, [ebp - 0x24]
xor ecx, ecx
mov eax, 0x4515d4
call fcn.0040c0bc
mov eax, dword [ebp - 0x1bc]
call fcn.00404c98
push eax
push 0
call sub.user32.dll_MessageBoxA_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x451334
mov byte [0x4b7910], 0
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x451376
lea eax, [ebp - 0x1bc]
mov edx, 8
call fcn.004047e0
lea eax, [ebp - 0x144]
mov edx, 2
call fcn.004047e0
lea eax, [ebp - 0x1c]
mov edx, 6
call fcn.004047e0
ret