Function at 0x40c350
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [ebp + 8]
xor edx, edx
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, eax
mov dword [ebp - 0x14], ebx
movzx eax, word [eax]
mov dword [ebp + 0xc], edx
push edi
mov edi, ecx
mov dword [ebp - 0x10], edi
test ax, ax
je 0x40c6ce
mov edi, dword [sym.imp.USER32.dll_CharNextW]
mov ecx, eax
cmp cx, 0x25
jne 0x40c6ab
push esi
call edi
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x25
je 0x40c6ab
xor edi, edi
xor ecx, ecx
mov dword [ebp - 0xc], edi
mov dword [ebp - 4], ecx
test ax, ax
je 0x40c403
mov edi, dword [ebp + 0xc]
mov ecx, eax
cmp cx, 0x23
jne 0x40c3bc
add edi, 2
jmp 0x40c3e4
cmp cx, 0x2a
jne 0x40c3cc
mov eax, dword [ebx]
add ebx, 4
mov dword [ebp - 4], eax
jmp 0x40c3e4
cmp cx, 0x2d
je 0x40c3e4
cmp cx, 0x2b
je 0x40c3e4
cmp cx, 0x30
je 0x40c3e4
cmp cx, 0x20
jne 0x40c3f7
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x40c3b1
cmp dword [ebp - 4], 0
mov dword [ebp + 0xc], edi
mov edi, dword [ebp - 0xc]
jne 0x40c437
push esi
call fcn.0043371a
movzx ecx, word [esi]
add esp, 4
mov dword [ebp - 4], eax
test cx, cx
je 0x40c437
push ecx
call fcn.00433a48
add esp, 4
test eax, eax
je 0x40c437
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x40c417
cmp word [esi], 0x2e
mov dword [ebp - 0xc], 0
jne 0x40c4a0
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
push esi
cmp word [esi], 0x2a
jne 0x40c466
mov eax, dword [ebx]
add ebx, 4
mov dword [ebp - 0xc], eax
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
jmp 0x40c4a0
call fcn.0043371a
movzx ecx, word [esi]
add esp, 4
mov dword [ebp - 0xc], eax
test cx, cx
je 0x40c4a0
nop dword [eax]
push ecx
call fcn.00433a48
add esp, 4
test eax, eax
je 0x40c4a0
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x40c480
movzx eax, word [esi]
mov dword [ebp - 8], 0
cmp eax, 0x49
jne 0x40c4e1
movzx eax, word [esi + 2]
cmp eax, 0x36
jne 0x40c4cb
cmp word [esi + 4], 0x34
jne 0x40c4cb
add esi, 6
mov dword [ebp - 8], 0x40000
jmp case.0x40c4f0.71
cmp eax, 0x33
jne 0x40c4dc
cmp word [esi + 4], 0x32
jne 0x40c4dc
add esi, 6
jmp case.0x40c4f0.71
add esi, 2
jmp case.0x40c4f0.71
add eax, 0xffffffba
cmp eax, 0x26
ja case.0x40c4f0.71
movzx eax, byte [eax + 0x40c740]
jmp dword [eax*4 + 0x40c730]
mov dword [ebp - 8], 0x10000
jmp case.0x40c4f0.70
mov dword [ebp - 8], 0x20000
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
or eax, dword [ebp - 8]
cmp eax, 0x10063
ja 0x40c5ab
je 0x40c53d
cmp eax, 0x73
ja 0x40c59d
je 0x40c584
cmp eax, 0x43
je 0x40c53d
cmp eax, 0x53
je 0x40c56b
cmp eax, 0x63
jne 0x40c612
mov edi, 2
add ebx, 4
mov eax, dword [ebp - 4]
cmp edi, eax
cmovg eax, edi
mov edi, eax
mov eax, dword [ebp - 0xc]
test eax, eax
je case.0x40c628.70
cmp edi, eax
cmovl eax, edi
mov edi, eax
add dword [ebp + 0xc], edi
mov edi, dword [sym.imp.USER32.dll_CharNextW]
jmp 0x40c6b5
mov eax, dword [ebx]
add ebx, 4
test eax, eax
jne 0x40c579
lea edi, [eax + 6]
jmp 0x40c545
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
jmp 0x40c5ff
mov eax, dword [ebx]
add ebx, 4
test eax, eax
jne 0x40c592
lea edi, [eax + 6]
jmp 0x40c545
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, eax
jmp 0x40c5ff
sub eax, 0x10043
je 0x40c53d
sub eax, 0x10
je 0x40c56b
jmp 0x40c612
cmp eax, 0x20053
ja 0x40c5c8
je 0x40c5d8
cmp eax, 0x10073
je 0x40c56b
cmp eax, 0x20043
je 0x40c53d
jmp 0x40c612
sub eax, 0x20063
je 0x40c53d
sub eax, 0x10
jne 0x40c612
mov edi, dword [ebx]
add ebx, 4
test edi, edi
jne 0x40c5eb
mov edi, 6
jmp 0x40c545
lea ecx, [edi + 2]
nop
mov ax, word [edi]
add edi, 2
test ax, ax
jne 0x40c5f0
sub edi, ecx
sar edi, 1
cmp edi, 1
mov eax, 1
cmovl edi, eax
test edi, edi
jne 0x40c545
movzx eax, word [esi]
add eax, 0xffffffbb
cmp eax, 0x33
ja case.0x40c628.70
movzx eax, byte [eax + 0x40c77c]
jmp dword [eax*4 + 0x40c768]
mov eax, dword [ebp - 8]
mov edi, 0x20
and eax, 0x40000
neg eax
sbb eax, eax
and eax, 4
add eax, 4
add ebx, eax
mov eax, dword [ebp - 0xc]
add eax, dword [ebp - 4]
cmp eax, edi
cmovge edi, eax
add dword [ebp + 0xc], edi
mov edi, dword [sym.imp.USER32.dll_CharNextW]
jmp 0x40c6b5
push str.Floating_point____e____f____g__and___G__is_not_supported_by_the_WTL::CString_class.
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call dword [sym.imp.KERNEL32.dll_DebugBreak]
add dword [ebp + 0xc], edi
mov edi, dword [sym.imp.USER32.dll_CharNextW]
jmp 0x40c6b5
mov eax, dword [ebp - 0xc]
mov edi, 0x20
add eax, dword [ebp - 4]
add ebx, 4
cmp eax, edi
jl case.0x40c628.70
mov edi, eax
add dword [ebp + 0xc], edi
mov edi, dword [sym.imp.USER32.dll_CharNextW]
jmp 0x40c6b5
add ebx, 4
add dword [ebp + 0xc], edi
mov edi, dword [sym.imp.USER32.dll_CharNextW]
jmp 0x40c6b5
push esi
call edi
sub eax, esi
sar eax, 1
add dword [ebp + 0xc], eax
push esi
call edi
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x40c382
mov edx, dword [ebp + 0xc]
mov edi, dword [ebp - 0x10]
push edx
mov ecx, edi
call fcn.0040d240
test eax, eax
jne 0x40c6e3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov ecx, dword [edi]
push dword [ebp - 0x14]
push 0
mov eax, dword [ecx - 4]
push dword [ebp + 8]
inc eax
push eax
push ecx
call fcn.0040ac70
push dword [eax + 4]
push dword [eax]
call fcn.004324b8
add esp, 0x1c
mov ecx, edi
call fcn.0040bf20
push dword [edi]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ecx, dword [edi]
xor edx, edx
mov dword [ecx - 8], eax
mov ecx, dword [edi]
pop edi
pop esi
pop ebx
mov word [ecx + eax*2], dx
lea eax, [edx + 1]
mov esp, ebp
pop ebp
ret 8