Function at 0x40fba0
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [ebp + 0x10]
and dword [ebp - 0xc], 0
push esi
mov esi, dword [ebp + 0xc]
cmp word [esi], 0
push edi
mov dword [ebp - 0x14], eax
je 0x40fe82
push ebx
mov ebx, dword [sym.imp.USER32.dll_CharNextW]
cmp word [esi], 0x25
jne 0x40fe6f
push esi
call ebx
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x25
je 0x40fe6f
xor edi, edi
mov dword [ebp - 8], edi
cmp ax, di
je 0x40fc36
cmp ax, 0x23
jne 0x40fbf7
add dword [ebp - 0xc], 2
jmp 0x40fc24
cmp ax, 0x2a
jne 0x40fc0c
add dword [ebp + 0x10], 4
mov eax, dword [ebp + 0x10]
mov eax, dword [eax - 4]
mov dword [ebp - 8], eax
jmp 0x40fc24
cmp ax, 0x2d
je 0x40fc24
cmp ax, 0x2b
je 0x40fc24
cmp ax, 0x30
je 0x40fc24
cmp ax, 0x20
jne 0x40fc31
push esi
call ebx
mov esi, eax
movzx eax, word [esi]
test ax, ax
jne 0x40fbeb
cmp dword [ebp - 8], edi
jne 0x40fc5d
push esi
call fcn.0041baff
pop ecx
mov dword [ebp - 8], eax
jmp 0x40fc55
movzx eax, ax
push eax
call fcn.0041bac3
pop ecx
test eax, eax
je 0x40fc5d
push esi
call ebx
mov esi, eax
movzx eax, word [esi]
test ax, ax
jne 0x40fc42
and dword [ebp - 4], edi
cmp word [esi], 0x2e
jne 0x40fcab
push esi
call ebx
mov esi, eax
cmp word [esi], 0x2a
push esi
jne 0x40fc85
add dword [ebp + 0x10], 4
mov eax, dword [ebp + 0x10]
mov eax, dword [eax - 4]
mov dword [ebp - 4], eax
call ebx
mov esi, eax
jmp 0x40fcab
call fcn.0041baff
pop ecx
mov dword [ebp - 4], eax
jmp 0x40fca3
movzx eax, ax
push eax
call fcn.0041bac3
pop ecx
test eax, eax
je 0x40fcab
push esi
call ebx
mov esi, eax
movzx eax, word [esi]
test ax, ax
jne 0x40fc90
movzx eax, word [esi]
and dword [ebp - 0x10], edi
cmp eax, 0x49
jne 0x40fcd0
cmp word [esi + 2], 0x36
jne 0x40fcd0
cmp word [esi + 4], 0x34
jne 0x40fcd0
add esi, 6
mov dword [ebp - 0x10], 0x40000
jmp 0x40fcfd
sub eax, 0x46
je 0x40fcf8
sub eax, 6
je 0x40fcf8
dec eax
dec eax
je 0x40fcf8
sub eax, 0x1a
je 0x40fcf1
sub eax, 4
jne 0x40fcfd
mov dword [ebp - 0x10], 0x20000
jmp 0x40fcf8
mov dword [ebp - 0x10], 0x10000
push esi
call ebx
mov esi, eax
movzx eax, word [esi]
or eax, dword [ebp - 0x10]
mov ecx, 0x10063
cmp eax, ecx
jg 0x40fdb6
je 0x40fdad
sub eax, 0x43
je 0x40fdad
push 0x10
pop ecx
sub eax, ecx
je 0x40fdee
sub eax, ecx
je 0x40fdad
sub eax, ecx
je 0x40fd91
sub eax, 0xffd0
je 0x40fdad
sub eax, ecx
je 0x40fdee
movzx eax, word [esi]
cmp eax, 0x69
jg 0x40fe2d
je 0x40fe42
cmp eax, 0x45
je 0x40fd7b
cmp eax, 0x47
je 0x40fd7b
cmp eax, 0x58
je 0x40fe42
cmp eax, 0x64
je 0x40fe42
add eax, 0xffffff9b
cmp eax, 2
ja 0x40fe6a
push 0x43a7d8
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call dword [sym.imp.KERNEL32.dll_DebugBreak]
jmp 0x40fe6a
add dword [ebp + 0x10], 4
mov eax, dword [ebp + 0x10]
mov eax, dword [eax - 4]
test eax, eax
jne 0x40fda4
push 6
pop edi
jmp 0x40fe15
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
jmp 0x40fe03
add dword [ebp + 0x10], 4
push 2
pop edi
jmp 0x40fe15
sub eax, 0x10073
je 0x40fdee
sub eax, 0xffd0
je 0x40fdad
sub eax, 0x10
je 0x40fdd7
sub eax, 0x10
je 0x40fdad
sub eax, 0x10
jne 0x40fd41
add dword [ebp + 0x10], 4
mov eax, dword [ebp + 0x10]
mov eax, dword [eax - 4]
test eax, eax
je 0x40fd9f
push eax
call fcn.0041a174
pop ecx
jmp 0x40fe03
add dword [ebp + 0x10], 4
mov eax, dword [ebp + 0x10]
mov eax, dword [eax - 4]
test eax, eax
je 0x40fd9f
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
cmp edi, 1
jge 0x40fe0d
xor edi, edi
inc edi
test edi, edi
je 0x40fd41
cmp edi, dword [ebp - 8]
jg 0x40fe1d
mov edi, dword [ebp - 8]
cmp dword [ebp - 4], 0
je 0x40fe6a
cmp edi, dword [ebp - 4]
jl 0x40fe6a
mov edi, dword [ebp - 4]
jmp 0x40fe6a
sub eax, 0x6e
je 0x40fe66
dec eax
je 0x40fe42
dec eax
je 0x40fe51
sub eax, 5
je 0x40fe42
sub eax, 3
jne 0x40fe6a
test dword [ebp - 0x10], 0x40000
je 0x40fe51
add dword [ebp + 0x10], 8
jmp 0x40fe55
add dword [ebp + 0x10], 4
mov eax, dword [ebp - 4]
add eax, dword [ebp - 8]
push 0x20
pop edi
cmp eax, edi
jl 0x40fe6a
mov edi, eax
jmp 0x40fe6a
add dword [ebp + 0x10], 4
add dword [ebp - 0xc], edi
jmp 0x40fe72
inc dword [ebp - 0xc]
push esi
call ebx
mov esi, eax
cmp word [esi], 0
jne 0x40fbc6
pop ebx
mov esi, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov edi, esi
call fcn.00410052
test eax, eax
je 0x40fea9
push dword [ebp - 0x14]
push dword [ebp + 0xc]
push dword [esi]
call dword [sym.imp.USER32.dll_wvsprintfW]
call fcn.004100ce
xor eax, eax
inc eax
pop edi
pop esi
leave
ret 0xc