Function at 0x402a44
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [ebp + 8]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov dword [ebp - 0x10], ecx
mov esi, eax
xor ecx, ecx
mov dword [ebp - 0x14], ebx
push edi
mov edi, ecx
mov dword [ebp - 4], edi
cmp word [eax], cx
je 0x402d69
push 0x25
pop ecx
cmp word [esi], cx
jne 0x402d42
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
push 0x25
pop ecx
movzx eax, word [esi]
cmp ax, cx
je 0x402d42
xor ecx, ecx
mov dword [ebp + 0xc], ecx
mov edi, ecx
mov dword [ebp - 0xc], edi
test ax, ax
je 0x402af5
mov edi, dword [ebp - 4]
cmp ax, 0x23
jne 0x402aac
add edi, 2
jmp 0x402ad8
push 0x2a
pop ecx
cmp ax, cx
jne 0x402abe
mov ecx, dword [ebx]
add ebx, 4
mov dword [ebp + 0xc], ecx
jmp 0x402ad8
cmp ax, 0x2d
je 0x402ad8
cmp ax, 0x2b
je 0x402ad8
cmp ax, 0x30
je 0x402ad8
push 0x20
pop ecx
cmp ax, cx
jne 0x402ae9
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
test ax, ax
jne 0x402aa1
cmp dword [ebp + 0xc], 0
mov dword [ebp - 4], edi
mov edi, dword [ebp - 0xc]
jne 0x402b20
push esi
call fcn.005546e0
pop ecx
mov dword [ebp + 0xc], eax
jmp 0x402b18
movzx ecx, cx
push ecx
call fcn.0055367b
pop ecx
test eax, eax
je 0x402b20
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx ecx, word [esi]
test cx, cx
jne 0x402b01
xor edx, edx
cmp word [esi], 0x2e
mov dword [ebp - 0xc], edx
jne 0x402b4f
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
push 0x2a
pop eax
push esi
cmp word [esi], ax
jne 0x402b76
mov eax, dword [ebx]
add ebx, 4
mov dword [ebp - 0xc], eax
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
xor edx, edx
movzx eax, word [esi]
mov dword [ebp - 8], edx
cmp eax, 0x49
jne 0x402bb6
movzx eax, word [esi + 2]
cmp eax, 0x36
jne 0x402ba0
cmp word [esi + 4], 0x34
jne 0x402ba0
add esi, 6
mov dword [ebp - 8], 0x40000
jmp 0x402beb
call fcn.005546e0
pop ecx
mov dword [ebp - 0xc], eax
movzx ecx, word [esi]
test cx, cx
je 0x402b4d
movzx ecx, cx
push ecx
call fcn.0055367b
pop ecx
test eax, eax
je 0x402b4d
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
jmp 0x402b7f
cmp eax, 0x33
jne 0x402bb1
cmp word [esi + 4], 0x32
jne 0x402bb1
add esi, 6
jmp 0x402beb
add esi, 2
jmp 0x402beb
sub eax, 0x46
je 0x402be0
sub eax, 6
je 0x402be0
dec eax
sub eax, 1
je 0x402be0
sub eax, 0x1a
je 0x402bd9
sub eax, 4
jne 0x402beb
mov dword [ebp - 8], 0x20000
jmp 0x402be0
mov dword [ebp - 8], 0x10000
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
xor edx, edx
movzx eax, word [esi]
mov ecx, dword [ebp - 8]
or eax, ecx
cmp eax, 0x10063
jg 0x402c85
je 0x402c7d
sub eax, 0x43
je 0x402c7d
push 0x10
pop edx
sub eax, edx
je 0x402c23
sub eax, edx
je 0x402c7d
sub eax, edx
je 0x402c64
sub eax, 0xffd0
je 0x402c7d
sub eax, edx
jne 0x402cc5
add ebx, 4
cmp dword [ebx - 4], 0
je 0x402c6d
push dword [ebx - 4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
xor eax, eax
inc eax
cmp edi, eax
cmovl edi, eax
test edi, edi
je 0x402cc2
mov eax, dword [ebp + 0xc]
cmp edi, eax
cmovg eax, edi
mov edi, eax
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x402d3a
cmp edi, eax
cmovl eax, edi
mov edi, eax
jmp 0x402d3a
add ebx, 4
cmp dword [ebx - 4], 0
jne 0x402c72
push 6
pop edi
jmp 0x402c43
push dword [ebx - 4]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
jmp 0x402c35
push 2
pop edi
add ebx, 4
jmp 0x402c43
sub eax, 0x10073
je 0x402c23
sub eax, 0xffd0
je 0x402c7d
sub eax, 0x10
je 0x402ca2
sub eax, 0x10
je 0x402c7d
sub eax, 0x10
jne 0x402cc5
mov edi, dword [ebx]
add ebx, 4
test edi, edi
je 0x402c6d
lea ecx, [edi + 2]
mov ax, word [edi]
add edi, 2
cmp ax, dx
jne 0x402cae
sub edi, ecx
sar edi, 1
jmp 0x402c37
mov ecx, dword [ebp - 8]
movzx eax, word [esi]
cmp eax, 0x69
jg 0x402cfe
je 0x402d17
cmp eax, 0x45
je 0x402ceb
cmp eax, 0x47
je 0x402ceb
cmp eax, 0x58
je 0x402d17
cmp eax, 0x64
je 0x402d17
add eax, 0xffffff9b
cmp eax, 2
ja 0x402d3a
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]
jmp 0x402d3a
sub eax, 0x6e
je 0x402d37
sub eax, 1
je 0x402d17
sub eax, 1
je 0x402d24
sub eax, 5
je 0x402d17
sub eax, 3
jne 0x402d3a
test ecx, 0x40000
je 0x402d24
add ebx, 8
jmp 0x402d27
add ebx, 4
mov edi, dword [ebp - 0xc]
add edi, dword [ebp + 0xc]
push 0x20
pop eax
cmp edi, eax
cmovl edi, eax
jmp 0x402d3a
add ebx, 4
add dword [ebp - 4], edi
mov edi, dword [ebp - 4]
jmp 0x402d52
push esi
call dword [sym.imp.USER32.dll_CharNextW]
sub eax, esi
sar eax, 1
add edi, eax
mov dword [ebp - 4], edi
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
xor eax, eax
push 0x25
pop ecx
cmp word [esi], ax
jne 0x402a6e
mov ebx, dword [ebp - 0x10]
mov ecx, ebx
push edi
call fcn.00402e35
test eax, eax
je 0x402d9b
mov edx, dword [ebx]
xor eax, eax
push dword [ebp - 0x14]
push eax
mov ecx, dword [edx - 4]
push dword [ebp + 8]
inc ecx
push ecx
push edx
call fcn.00402a16
add esp, 0x10
mov ecx, ebx
call fcn.00402ee2
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8