Function at 0x407769
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x224
and dword [ebp - 0x20], 0
cmp word [0x412c3c], 0
jne 0x407a63
push ebx
push esi
push edi
call dword [sym.imp.MSVCR110.dll___iob_func]
mov edi, dword [ebp + 8]
lea esi, [eax + 0x20]
xor edx, edx
mov dword [ebp - 0x24], esi
inc edx
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x40779c
sub edi, ecx
xor eax, eax
lea ecx, [edi - 1]
test ecx, ecx
je 0x40780e
mov esi, dword [ebp + 8]
lea ecx, [ebp + 8]
lea ebx, [edi - 1]
cmp byte [eax + esi], 0x25
jne 0x407806
inc eax
mov dword [ebp - 4], eax
mov bl, byte [eax + esi]
cmp bl, 0x66
je 0x4077fd
add ecx, 4
cmp bl, 0x6c
je 0x4077f8
cmp bl, 0x73
je 0x4077db
add edx, 0xa
jmp 0x407803
mov ebx, dword [ecx]
test ebx, ebx
je 0x407803
lea eax, [ebx + 1]
mov dword [ebp - 0x1c], eax
mov al, byte [ebx]
inc ebx
test al, al
jne 0x4077e7
sub ebx, dword [ebp - 0x1c]
mov eax, dword [ebp - 4]
add edx, ebx
jmp 0x407803
add edx, 0x14
jmp 0x407803
add ecx, 8
add edx, 0x19
lea ebx, [edi - 1]
inc eax
cmp eax, ebx
jb 0x4077b7
mov esi, dword [ebp - 0x24]
add edi, edx
mov ebx, 0x200
cmp edi, ebx
jbe 0x407828
push edi
call dword [sym.imp.MSVCR110.dll_malloc]
pop ecx
mov dword [ebp - 0x20], eax
test eax, eax
jne 0x407832
mov edi, ebx
lea ebx, [ebp - 0x224]
jmp 0x407834
mov ebx, eax
lea eax, [ebp + 0xc]
push eax
push dword [ebp + 8]
push edi
push ebx
call dword [sym.imp.MSVCR110.dll__vsnprintf]
lea eax, [edi + 1]
add eax, eax
push eax
mov byte [ebx + edi - 1], 0
call dword [sym.imp.MSVCR110.dll_malloc]
add esp, 0x14
mov dword [ebp - 4], eax
test eax, eax
je 0x40797b
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0xb], 0x68436564
mov word [ebp - 0xd], 0x6957
mov dword [ebp - 0x12], 0x54657479
mov dword [ebp - 0x18], 0x746c754d
mov word [ebp - 0x14], 0x4269
mov byte [ebp - 0xe], 0x6f
mov word [ebp - 6], 0x72
mov byte [ebp - 7], 0x61
call fcn.00406d77
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x407971
lea ecx, [edi + 1]
push ecx
push dword [ebp - 4]
push 0xffffffffffffffff
push ebx
push 8
push 0xfde9
call eax
test eax, eax
je 0x407971
lea eax, [edi + 1]
push eax
call dword [sym.imp.MSVCR110.dll_malloc]
pop ecx
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x407971
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], 0x65646957
mov dword [ebp - 0xc], 0x4269746c
mov word [ebp - 0x13], 0x6168
mov dword [ebp - 0x10], 0x754d6f54
mov dword [ebp - 8], 0x657479
mov byte [ebp - 0x11], 0x72
mov byte [ebp - 0x14], 0x43
call fcn.00406d77
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov ecx, eax
test ecx, ecx
je 0x40795c
xor edx, edx
push edx
push edx
lea eax, [edi + 1]
push eax
push dword [ebp - 0x1c]
push 0xffffffffffffffff
push dword [ebp - 4]
push edx
push 1
call ecx
test eax, eax
je 0x40795c
push dword [ebp - 4]
mov ebx, dword [sym.imp.MSVCR110.dll_free]
call ebx
pop ecx
cmp edi, 0x200
jbe 0x40794d
push dword [ebp - 0x20]
call ebx
pop ecx
mov eax, dword [ebp - 0x1c]
mov ebx, eax
mov dword [ebp - 0x20], eax
mov edi, 0x201
jmp 0x40797b
push dword [ebp - 0x1c]
call dword [sym.imp.MSVCR110.dll_free]
push dword [ebp - 4]
call dword [sym.imp.MSVCR110.dll_free]
pop ecx
jmp 0x40797a
push dword [ebp - 4]
call dword [sym.imp.MSVCR110.dll_free]
pop ecx
mov al, byte [ebx]
cmp al, 0x21
jne 0x4079a2
cmp word [0x412c34], 0
jne 0x407994
call dword [sym.imp.MSVCR110.dll___iob_func]
lea esi, [eax + 0x40]
lea eax, [ebx + 1]
push eax
push 0x412744
jmp 0x407a28
cmp al, 0x40
jne 0x4079c4
cmp word [0x412c34], 0
jne 0x4079b9
call dword [sym.imp.MSVCR110.dll___iob_func]
lea esi, [eax + 0x40]
lea eax, [ebx + 1]
push eax
push str.ERROR:__s
jmp 0x407a28
cmp word [0x412c38], 0
jne 0x407a32
cmp al, 0x5e
jne 0x4079fa
cmp word [0x412c40], 0
jne 0x407a32
cmp word [0x412c34], 0
jne 0x4079ef
call dword [sym.imp.MSVCR110.dll___iob_func]
lea esi, [eax + 0x40]
lea eax, [ebx + 1]
push eax
push str.WARNING:__s
jmp 0x407a28
cmp al, 0x2a
jne 0x407a13
cmp word [0x412c28], 0
je 0x407a32
lea eax, [ebx + 1]
push eax
push 0x412768
jmp 0x407a28
cmp al, 0x7e
jne 0x407a22
lea eax, [ebx + 1]
push eax
push 0x41276c
jmp 0x407a28
push ebx
push 0x412770
push esi
call dword [sym.imp.MSVCR110.dll_fprintf]
add esp, 0xc
mov ebx, dword [sym.imp.MSVCR110.dll___iob_func]
call ebx
add eax, 0x20
cmp esi, eax
jne 0x407a4e
call ebx
add eax, 0x20
push eax
call dword [sym.imp.MSVCR110.dll_fflush]
pop ecx
cmp edi, 0x200
pop edi
pop esi
pop ebx
jbe 0x407a63
push dword [ebp - 0x20]
call dword [sym.imp.MSVCR110.dll_free]
pop ecx
leave
ret