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

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x37
push 0
push 0
dec ecx
jne 0x45c83c
push ecx
push ebx
push esi
push edi
mov dword [ebp - 0x1c], eax
xor eax, eax
push ebp
push 0x45ccbe
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [0x5e1938], 1
xor eax, eax
push ebp
push 0x45cc7c
push dword fs:[eax]
mov dword fs:[eax], esp
call fcn.004030f0
mov edx, dword [0x40957c]
mov dword [ebp - 0x24], edx
mov edx, dword [0x455efc]
mov dword [ebp - 0x20], edx
lea edx, [ebp - 0x24]
mov ecx, 1
call fcn.0045b774
test al, al
je 0x45c89f
call fcn.00405124
jmp 0x45cc83
call fcn.004340bc
test al, al
jne 0x45c8bb
call fcn.0045b25c
test al, al
jne 0x45c8bb
call fcn.00405124
jmp 0x45cc83
call fcn.00403110
mov ebx, eax
call fcn.004030f0
mov edx, dword [0x4094f0]
call fcn.0040488c
test al, al
je 0x45c91d
call fcn.004030f0
call fcn.0045c374
test al, al
je 0x45c8eb
test ebx, ebx
je 0x45c8eb
sub ebx, 5
call fcn.004030f0
mov edx, dword [eax + 4]
lea eax, [ebp - 0x14]
call fcn.0040579c
call fcn.004030f0
mov eax, dword [eax]
lea edx, [ebp - 0x124]
call fcn.004045e0
lea edx, [ebp - 0x124]
lea eax, [ebp - 8]
call fcn.00405978
jmp 0x45c932
lea eax, [ebp - 0x14]
mov edx, 0x45ccd4
call fcn.0040579c
lea eax, [ebp - 8]
call fcn.00405704
mov eax, dword [0x5e1e5c]
call fcn.0045b5a0
test al, al
je 0x45c962
lea edx, [ebp - 0x124]
mov eax, dword [0x5e1e5c]
mov eax, dword [eax]
call fcn.004045e0
lea edx, [ebp - 0x124]
lea eax, [ebp - 4]
call fcn.00405978
jmp 0x45c96a
lea eax, [ebp - 4]
call fcn.00405704
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp - 0x1c]
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.0040af00
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, 0x45ccf4
call fcn.0040c20c
mov eax, dword [ebp - 0x10]
call fcn.00405bc0
push eax
call sub.kernel32.dll_OutputDebugStringA_1
lea eax, [ebp - 0x18]
call fcn.00405704
mov edx, 0x20
mov eax, esi
call fcn.0043389c
test al, al
je 0x45ca36
mov edi, esi
add esi, 0x20
dec esi
sub esi, edi
jb 0x45ca36
inc esi
push dword [ebp - 0x18]
push 0x45cd30
lea ecx, [ebp - 0x144]
movzx eax, byte [edi]
mov edx, 2
call fcn.0040aed8
push dword [ebp - 0x144]
push 0x45cd3c
lea eax, [ebp - 0x18]
mov edx, 4
call fcn.00405ac4
inc edi
dec esi
jne 0x45c9ff
lea eax, [ebp - 0x10]
push eax
mov eax, 0x45cd48
mov dword [ebp - 0x19c], eax
mov byte [ebp - 0x198], 0xb
call fcn.0040d990
add esp, 0xfffffff8
fstp qword [esp]
wait
lea eax, [ebp - 0x1a0]
call fcn.0045bfa0
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x194], eax
mov byte [ebp - 0x190], 0xb
lea eax, [ebp - 0x1a4]
call fcn.0045bc88
mov eax, dword [ebp - 0x1a4]
mov dword [ebp - 0x18c], eax
mov byte [ebp - 0x188], 0xb
mov eax, 0x45cd58
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 eax, dword [ebp - 0x1c]
mov dword [ebp - 0x174], eax
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, ebx
call fcn.0045c6b0
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.0045c398
mov eax, dword [ebp - 0x1ac]
mov dword [ebp - 0x14c], eax
mov byte [ebp - 0x148], 0xb
lea edx, [ebp - 0x19c]
mov ecx, 0xa
mov eax, 0x45cd68
call fcn.0040c20c
lea edx, [ebp - 0x1b0]
xor eax, eax
call fcn.00403598
mov eax, dword [ebp - 0x1b0]
lea ecx, [ebp - 0xc]
mov edx, 0x45ce20
call fcn.0040b4b0
lea eax, [ebp - 0xc]
xor ecx, ecx
mov dl, 1
call fcn.004342b4
test al, al
jne 0x45cb83
call fcn.00405124
jmp 0x45cc83
mov dl, 1
mov eax, dword [0x41ecf4]
call fcn.004046d0
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.00404700
push 0x242014
push 0x45ce28
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, 0x45ce48
call fcn.0040c20c
mov eax, dword [ebp - 0x1b4]
call fcn.00405bc0
push eax
push 0
call sub.USER32.dll_MessageBoxA_3
cmp eax, 6
jne 0x45cc67
lea edx, [ebp - 0x1b8]
xor eax, eax
call fcn.00403598
mov eax, dword [ebp - 0x1b8]
lea ecx, [ebp - 0xc]
mov edx, 0x45ce20
call fcn.0040b4b0
mov eax, dword [ebp - 0xc]
push eax
mov ecx, 0x45cec0
mov edx, 0x45cec0
mov eax, 0x45cee8
call fcn.0046f17c
test al, al
jne 0x45cc67
push 0x242030
push 0x45cf00
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, 0x45cf14
call fcn.0040c20c
mov eax, dword [ebp - 0x1bc]
call fcn.00405bc0
push eax
push 0
call sub.USER32.dll_MessageBoxA_3
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45cc83
mov byte [0x5e1938], 0
ret
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x45ccc5
lea eax, [ebp - 0x1bc]
mov edx, 8
call fcn.00405728
lea eax, [ebp - 0x144]
mov edx, 2
call fcn.00405728
lea eax, [ebp - 0x18]
mov edx, 6
call fcn.00405728
ret