Function at 0x40205b
Capabilities:
Print debug messages

Disassembly:
sub esp, 0x14
push ebx
mov ebx, dword [esp + 0x20]
xor eax, eax
push ebp
mov ebp, eax
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x20]
push esi
mov esi, eax
mov dword [esp + 0x14], ebp
push edi
movzx eax, word [eax]
mov edi, ecx
mov dword [esp + 0x1c], edi
test ax, ax
je 0x4023d2
push 0x25
mov ecx, eax
pop edi
cmp cx, di
jne 0x4023a6
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
cmp ax, di
je 0x4023a6
xor ecx, ecx
mov edi, ecx
mov ebp, ecx
mov dword [esp + 0x10], edi
test ax, ax
je 0x402119
mov edi, dword [esp + 0x18]
mov ecx, eax
cmp cx, 0x23
jne 0x4020cd
add edi, 2
jmp 0x4020f6
push 0x2a
pop eax
cmp cx, ax
jne 0x4020dc
mov ebp, dword [ebx]
add ebx, 4
jmp 0x4020f6
cmp cx, 0x2d
je 0x4020f6
cmp cx, 0x2b
je 0x4020f6
cmp cx, 0x30
je 0x4020f6
push 0x20
pop eax
cmp cx, ax
jne 0x402109
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x4020c2
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x10]
mov dword [esp + 0x14], ebp
test ebp, ebp
jne 0x40214a
push esi
call fcn.00418fdd
pop ecx
movzx ecx, word [esi]
mov dword [esp + 0x14], eax
test cx, cx
je 0x40214a
push ecx
call fcn.0041c841
pop ecx
test eax, eax
je 0x40214a
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x40212c
xor ebp, ebp
cmp word [esi], 0x2e
mov dword [esp + 0x10], ebp
jne 0x4021ab
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
push 0x2a
pop eax
push esi
cmp word [esi], ax
jne 0x40217b
mov eax, dword [ebx]
add ebx, 4
mov dword [esp + 0x14], eax
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
jmp 0x4021ab
call fcn.00418fdd
pop ecx
movzx ecx, word [esi]
mov dword [esp + 0x10], eax
test cx, cx
je 0x4021ab
push ecx
call fcn.0041c841
pop ecx
test eax, eax
je 0x4021ab
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x40218d
movzx eax, word [esi]
cmp eax, 0x49
jne 0x4021e3
movzx eax, word [esi + 2]
cmp eax, 0x36
jne 0x4021cd
cmp word [esi + 4], 0x34
jne 0x4021cd
add esi, 6
mov ebp, 0x40000
jmp 0x402212
cmp eax, 0x33
jne 0x4021de
cmp word [esi + 4], 0x32
jne 0x4021de
add esi, 6
jmp 0x402212
add esi, 2
jmp 0x402212
sub eax, 0x46
je 0x402209
sub eax, 6
je 0x402209
dec eax
sub eax, 1
je 0x402209
sub eax, 0x1a
je 0x402204
sub eax, 4
jne 0x402212
mov ebp, 0x20000
jmp 0x402209
mov ebp, 0x10000
push esi
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, 0x10063
or eax, ebp
cmp eax, ecx
ja 0x4022c6
je 0x4022be
sub eax, 0x43
je 0x4022be
push 0x10
pop ecx
sub eax, ecx
je 0x402306
sub eax, ecx
je 0x4022be
sub eax, ecx
je 0x4022a5
sub eax, 0xffd0
je 0x4022be
sub eax, ecx
je 0x402306
movzx eax, word [esi]
cmp eax, 0x69
ja 0x402346
je 0x40235f
cmp eax, 0x45
je 0x40228f
cmp eax, 0x47
je 0x40228f
cmp eax, 0x58
je 0x40235f
cmp eax, 0x64
je 0x40235f
add eax, 0xffffff9b
cmp eax, 2
ja 0x40239b
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 0x40239b
add ebx, 4
cmp dword [ebx - 4], 0
jne 0x4022b3
push 6
pop edi
jmp 0x40232a
push dword [ebx - 4]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
jmp 0x402318
push 2
pop edi
add ebx, 4
jmp 0x40232a
sub eax, 0x10073
je 0x402306
sub eax, 0xffd0
je 0x4022be
push 0x10
pop ecx
sub eax, ecx
je 0x4022e7
sub eax, ecx
je 0x4022be
sub eax, ecx
jne 0x402255
mov edi, dword [ebx]
add ebx, 4
test edi, edi
je 0x4022ae
lea ecx, [edi + 2]
xor edx, edx
mov ax, word [edi]
add edi, 2
cmp ax, dx
jne 0x4022f5
sub edi, ecx
sar edi, 1
jmp 0x40231a
add ebx, 4
cmp dword [ebx - 4], 0
je 0x4022ae
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 0x402255
mov eax, dword [esp + 0x14]
cmp edi, eax
cmovg eax, edi
mov edi, eax
mov eax, dword [esp + 0x10]
test eax, eax
je 0x40239b
cmp edi, eax
cmovl eax, edi
mov edi, eax
jmp 0x40239b
sub eax, 0x6e
je 0x402398
sub eax, 1
je 0x40235f
sub eax, 1
je 0x402383
sub eax, 5
je 0x40235f
sub eax, 3
jne 0x40239b
mov edi, dword [esp + 0x10]
add edi, dword [esp + 0x14]
push 0x20
pop eax
cmp edi, eax
cmovl edi, eax
and ebp, 0x40000
neg ebp
sbb ebp, ebp
and ebp, 4
add ebp, 4
add ebx, ebp
jmp 0x40239b
mov edi, dword [esp + 0x10]
add ebx, 4
add edi, dword [esp + 0x14]
push 0x20
pop eax
cmp edi, eax
cmovl edi, eax
jmp 0x40239b
add ebx, 4
mov ebp, dword [esp + 0x18]
push 0x25
add ebp, edi
pop edi
jmp 0x4023b3
push esi
call dword [sym.imp.USER32.dll_CharNextW]
sub eax, esi
sar eax, 1
add ebp, eax
push esi
mov dword [esp + 0x1c], ebp
call dword [sym.imp.USER32.dll_CharNextW]
mov esi, eax
movzx eax, word [esi]
mov ecx, eax
test ax, ax
jne 0x40208f
mov edi, dword [esp + 0x1c]
push ebp
mov ecx, edi
call fcn.00402bdb
test eax, eax
je 0x402401
mov ecx, dword [edi]
push dword [esp + 0x20]
push ecx
mov edx, dword [ecx - 4]
push dword [esp + 0x30]
inc edx
call fcn.00402034
add esp, 0xc
mov ecx, edi
push 0xffffffffffffffff
call fcn.00402b92
xor eax, eax
inc eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x14
ret 8