Function at 0x437121
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0xc]
xor ebx, ebx
push edi
mov edi, eax
mov dword [ebp - 0x10], ecx
mov al, byte [eax]
mov dword [ebp - 0x14], esi
mov dword [ebp - 4], ebx
jmp 0x43741f
cmp al, 0x25
jne 0x437410
push edi
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
mov cl, byte [edi]
cmp cl, 0x25
je 0x437410
xor ebx, ebx
and dword [ebp + 0xc], ebx
mov dword [ebp - 0xc], ebx
test cl, cl
je 0x4371b7
mov ebx, dword [ebp - 4]
cmp cl, 0x23
jne 0x437179
add ebx, 2
jmp 0x43719c
cmp cl, 0x2a
jne 0x437188
mov ecx, dword [esi]
add esi, 4
mov dword [ebp + 0xc], ecx
jmp 0x43719c
cmp cl, 0x2d
je 0x43719c
cmp cl, 0x2b
je 0x43719c
cmp cl, 0x30
je 0x43719c
cmp cl, 0x20
jne 0x4371ab
push edi
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
mov cl, byte [edi]
test cl, cl
jne 0x43716f
cmp dword [ebp + 0xc], 0
mov dword [ebp - 4], ebx
mov ebx, dword [ebp - 0xc]
jne 0x4371e0
push edi
call fcn.005ba8d9
pop ecx
mov dword [ebp + 0xc], eax
jmp 0x4371da
movsx ecx, cl
push ecx
call fcn.005bc62d
pop ecx
test eax, eax
je 0x4371e0
push edi
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
mov cl, byte [edi]
test cl, cl
jne 0x4371c3
and dword [ebp - 8], 0
cmp byte [edi], 0x2e
jne 0x437232
push edi
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
push edi
cmp byte [edi], 0x2a
jne 0x43720a
mov eax, dword [esi]
add esi, 4
mov dword [ebp - 8], eax
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
jmp 0x437232
call fcn.005ba8d9
pop ecx
mov dword [ebp - 8], eax
jmp 0x43722c
movsx ecx, cl
push ecx
call fcn.005bc62d
pop ecx
test eax, eax
je 0x437232
push edi
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
mov cl, byte [edi]
test cl, cl
jne 0x437215
mov al, byte [edi]
and dword [ebp - 0xc], 0
cmp al, 0x49
jne 0x437254
cmp byte [edi + 1], 0x36
jne 0x437254
cmp byte [edi + 2], 0x34
jne 0x437254
add edi, 3
mov dword [ebp - 0xc], 0x40000
jmp 0x43728a
movsx eax, al
sub eax, 0x46
je 0x437281
sub eax, 6
je 0x437281
dec eax
sub eax, 1
je 0x437281
sub eax, 0x1a
je 0x43727a
sub eax, 4
jne 0x43728a
mov dword [ebp - 0xc], 0x20000
jmp 0x437281
mov dword [ebp - 0xc], 0x10000
push edi
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
movsx eax, byte [edi]
mov ecx, 0x10063
or eax, dword [ebp - 0xc]
cmp eax, ecx
jg 0x43733e
je 0x437336
sub eax, 0x43
je 0x437336
push 0x10
pop ecx
sub eax, ecx
je 0x437378
sub eax, ecx
je 0x437336
sub eax, ecx
je 0x437378
sub eax, 0xffd0
je 0x437336
sub eax, ecx
je 0x437378
movsx eax, byte [edi]
cmp eax, 0x6e
jg 0x4373db
je 0x4373d3
cmp eax, 0x47
je 0x4373bd
cmp eax, 0x58
je 0x437307
cmp eax, 0x64
je 0x437307
jle 0x43732b
cmp eax, 0x67
jle 0x4373bd
cmp eax, 0x69
jne 0x43732b
mov ebx, dword [ebp - 8]
mov ecx, dword [ebp + 0xc]
add ebx, ecx
push 0x20
pop eax
cmp ebx, eax
cmovl ebx, eax
mov eax, dword [ebp - 0xc]
and eax, 0x40000
neg eax
sbb eax, eax
and eax, 4
add eax, 4
add esi, eax
add dword [ebp - 4], ebx
mov ebx, dword [ebp - 4]
jmp 0x437414
push 2
pop ebx
add esi, 4
jmp 0x43739c
sub eax, 0x10073
je 0x437378
sub eax, 0xffd0
je 0x437336
push 0x10
pop ecx
sub eax, ecx
je 0x43735f
sub eax, ecx
je 0x437336
sub eax, ecx
jne 0x4372d2
add esi, 4
cmp dword [esi - 4], 0
jne 0x43736d
push 6
pop ebx
jmp 0x43739c
push dword [esi - 4]
call fcn.005baec0
pop ecx
jmp 0x43738a
add esi, 4
cmp dword [esi - 4], 0
je 0x437368
push dword [esi - 4]
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ebx, eax
xor eax, eax
inc eax
cmp ebx, eax
cmovl ebx, eax
test ebx, ebx
je 0x4372d2
mov eax, dword [ebp + 0xc]
cmp ebx, eax
cmovg eax, ebx
mov ebx, eax
mov eax, dword [ebp - 8]
test eax, eax
je 0x43732b
cmp ebx, eax
cmovl eax, ebx
mov ebx, eax
jmp 0x43732b
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 0x43732b
add esi, 4
jmp 0x43732b
sub eax, 0x6f
je 0x437307
sub eax, 1
je 0x4373fa
sub eax, 5
je 0x437307
sub eax, 3
jmp 0x437305
mov ebx, dword [ebp - 8]
add esi, 4
add ebx, dword [ebp + 0xc]
push 0x20
pop ecx
cmp ebx, ecx
cmovl ebx, ecx
jmp 0x43732b
inc ebx
mov dword [ebp - 4], ebx
push edi
call dword [sym.imp.USER32.dll_CharNextA]
mov edi, eax
mov al, byte [edi]
test al, al
jne 0x437144
push ebx
mov ebx, dword [ebp - 0x10]
mov ecx, ebx
call fcn.0041de01
test eax, eax
je 0x43744f
push dword [ebp - 0x14]
push dword [ebp + 8]
push dword [ebx]
call dword [sym.imp.USER32.dll_wvsprintfA]
push ecx
mov ecx, ebx
call fcn.0041deb6
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
leave
ret 8