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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x37
push 0
push 0
dec ecx
jne 0x45dd10
push ecx
push ebx
push esi
push edi
mov edi, eax
xor eax, eax
push ebp
push 0x45e1a3
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [0x593bdc], 1
xor edx, edx
push ebp
push 0x45e161
push dword fs:[edx]
mov dword fs:[edx], esp
call fcn.00402ccc
mov edx, dword [0x40ad50]
mov dword [ebp - 0x24], edx
mov edx, dword [0x438058]
mov dword [ebp - 0x20], edx
lea edx, [ebp - 0x24]
mov ecx, 1
call fcn.0045cf7c
test al, al
je 0x45dd72
call fcn.0040485c
jmp 0x45e168
call fcn.00430700
test al, al
jne 0x45dd8e
call fcn.0045c974
test al, al
jne 0x45dd8e
call fcn.0040485c
jmp 0x45e168
call fcn.00402cec
mov dword [ebp - 0x1c], eax
call fcn.00402ccc
mov edx, dword [0x40acc4]
call fcn.004040a4
test al, al
je 0x45ddf9
call fcn.00402ccc
call fcn.0045d84c
test al, al
je 0x45ddc7
cmp dword [ebp - 0x1c], 0
je 0x45ddc7
mov eax, dword [ebp - 0x1c]
sub eax, 5
mov dword [ebp - 0x1c], eax
call fcn.00402ccc
mov edx, dword [eax + 4]
lea eax, [ebp - 0x14]
call fcn.00404ef4
call fcn.00402ccc
mov eax, dword [eax]
lea edx, [ebp - 0x124]
call fcn.00403e5c
lea edx, [ebp - 0x124]
lea eax, [ebp - 8]
call fcn.004050c0
jmp 0x45de16
lea eax, [ebp - 0x14]
mov edx, 0x45e1bc
call fcn.00404ef4
lea eax, [ebp - 0x14]
call fcn.0042f2f4
lea eax, [ebp - 8]
call fcn.00404e5c
mov eax, dword [0x594130]
call fcn.0045ccd8
test al, al
je 0x45de46
lea edx, [ebp - 0x124]
mov eax, dword [0x594130]
mov eax, dword [eax]
call fcn.00403e5c
lea edx, [ebp - 0x124]
lea eax, [ebp - 4]
call fcn.004050c0
jmp 0x45de4e
lea eax, [ebp - 4]
call fcn.00404e5c
lea eax, [ebp - 0x10]
push eax
mov dword [ebp - 0x13c], edi
mov byte [ebp - 0x138], 0xb
mov eax, dword [ebp - 0x1c]
xor edx, edx
push edx
push eax
lea edx, [ebp - 0x140]
mov eax, 8
call fcn.0040c0a4
mov eax, dword [ebp - 0x140]
mov dword [ebp - 0x134], eax
mov byte [ebp - 0x130], 0xb
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x12c], eax
mov byte [ebp - 0x128], 0xb
lea edx, [ebp - 0x13c]
mov ecx, 2
mov eax, 0x45e1dc
call fcn.0040d570
mov eax, dword [ebp - 0x10]
call fcn.00405338
push eax
call sub.kernel32.dll_OutputDebugStringA
lea eax, [ebp - 0x18]
call fcn.00404e5c
mov edx, 0x20
mov eax, dword [ebp - 0x1c]
call fcn.0042ffa0
test al, al
je 0x45df1d
mov eax, dword [ebp - 0x1c]
mov esi, eax
mov ebx, eax
add ebx, 0x20
dec ebx
sub ebx, esi
jb 0x45df1d
inc ebx
push dword [ebp - 0x18]
push 0x45e218
lea ecx, [ebp - 0x144]
xor eax, eax
mov al, byte [esi]
mov edx, 2
call fcn.0040c07c
push dword [ebp - 0x144]
push 0x45e224
lea eax, [ebp - 0x18]
mov edx, 4
call fcn.004051f8
inc esi
dec ebx
jne 0x45dee5
lea eax, [ebp - 0x10]
push eax
mov eax, 0x45e230
mov dword [ebp - 0x19c], eax
mov byte [ebp - 0x198], 0xb
call fcn.0040e610
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x1a0]
call fcn.0045d444
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x194], eax
mov byte [ebp - 0x190], 0xb
lea eax, [ebp - 0x1a4]
call fcn.0045c114
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x18c], eax
mov byte [ebp - 0x188], 0xb
mov eax, 0x45e240
mov dword [ebp - 0x184], eax
mov byte [ebp - 0x180], 0xb
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x17c], eax
mov byte [ebp - 0x178], 0xb
mov dword [ebp - 0x174], edi
mov byte [ebp - 0x170], 0xb
mov eax, dword [ebp - 4]
mov dword [ebp - 0x16c], eax
mov byte [ebp - 0x168], 0xb
lea edx, [ebp - 0x1a8]
mov eax, dword [ebp - 0x1c]
call fcn.0045db84
mov eax, dword [ebp - 0x1a8]
mov dword [ebp - 0x164], eax
mov byte [ebp - 0x160], 0xb
mov eax, dword [ebp - 8]
mov dword [ebp - 0x15c], eax
mov byte [ebp - 0x158], 0xb
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x154], eax
mov byte [ebp - 0x150], 0xb
lea eax, [ebp - 0x1ac]
call fcn.0045d870
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x14c], eax
mov byte [ebp - 0x148], 0xb
lea edx, [ebp - 0x19c]
mov ecx, 0xa
mov eax, 0x45e254
call fcn.0040d570
lea edx, [ebp - 0x1b0]
xor eax, eax
call fcn.004030e8
mov eax, dword [ebp - 0x1b0]
lea ecx, [ebp - 0xc]
mov edx, 0x45e30c
call fcn.0040c880
lea eax, [ebp - 0xc]
xor ecx, ecx
mov dl, 1
call fcn.00430b08
test al, al
jne 0x45e068
call fcn.0040485c
jmp 0x45e168
mov dl, 1
mov eax, dword [0x41f728]
call fcn.00403edc
mov ebx, eax
mov edx, dword [ebp - 0x10]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov edx, dword [ebp - 0xc]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x74]
mov eax, ebx
call fcn.00403f0c
push 0x242014
push 0x45e314
lea eax, [ebp - 0x1b4]
push eax
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
lea edx, [ebp - 0x24]
xor ecx, ecx
mov eax, 0x45e334
call fcn.0040d570
mov eax, dword [ebp - 0x1b4]
call fcn.00405338
push eax
push 0
call sub.user32.dll_MessageBoxA_1
cmp eax, 6
jne 0x45e14c
lea edx, [ebp - 0x1b8]
xor eax, eax
call fcn.004030e8
mov eax, dword [ebp - 0x1b8]
lea ecx, [ebp - 0xc]
mov edx, 0x45e30c
call fcn.0040c880
mov eax, dword [ebp - 0xc]
push eax
mov ecx, 0x45e3ac
mov edx, 0x45e3ac
mov eax, 0x45e3d4
call fcn.00471600
test al, al
jne 0x45e14c
push 0x242030
push 0x45e3ec
lea eax, [ebp - 0x1bc]
push eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0x24], eax
mov byte [ebp - 0x20], 0xb
lea edx, [ebp - 0x24]
xor ecx, ecx
mov eax, 0x45e400
call fcn.0040d570
mov eax, dword [ebp - 0x1bc]
call fcn.00405338
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 0x45e168
mov byte [0x593bdc], 0
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45e1aa
lea eax, [ebp - 0x1bc]
mov edx, 8
call fcn.00404e80
lea eax, [ebp - 0x144]
mov edx, 2
call fcn.00404e80
lea eax, [ebp - 0x18]
mov edx, 6
call fcn.00404e80
ret