Function at 0x401964
Capabilities:
Print debug messages

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x28
xor r15d, r15d
mov rbx, r8
mov rsi, rdx
cmp word [rdx], r15w
mov r14, rcx
mov rbp, r8
lea r12d, [r15 + 1]
mov qword [rsp + 0x80], r8
mov rdi, rdx
je 0x401ccb
lea ebp, [r15 + 0x20]
mov r14d, r12d
cmp word [rdi], 0x25
jne 0x401c9a
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
movzx eax, word [rax]
cmp ax, 0x25
je 0x401c9a
xor esi, esi
xor r13d, r13d
test ax, ax
je 0x401a25
cmp ax, 0x23
jne 0x4019e6
add r15d, 2
jmp 0x401a0c
cmp ax, 0x2a
jne 0x4019f5
mov r13d, dword [rbx]
add rbx, 8
jmp 0x401a0c
cmp ax, 0x2d
je 0x401a0c
cmp ax, 0x2b
je 0x401a0c
cmp ax, 0x30
je 0x401a0c
cmp ax, bp
jne 0x401a20
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
mov ax, word [rax]
test ax, ax
jne 0x4019da
test r13d, r13d
jne 0x401a52
mov rcx, rdi
call sub.msvcrt.dll__wtoi
movzx ecx, word [rdi]
mov r13d, eax
jmp 0x401a4d
call sub.msvcrt.dll_iswdigit
test eax, eax
je 0x401a52
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
mov cx, word [rax]
test cx, cx
jne 0x401a35
xor r12d, r12d
cmp word [rdi], 0x2e
jne 0x401aac
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
mov rcx, rax
cmp word [rax], 0x2a
jne 0x401a82
mov r12d, dword [rbx]
add rbx, 8
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
jmp 0x401aac
call sub.msvcrt.dll__wtoi
movzx ecx, word [rdi]
mov r12d, eax
jmp 0x401aa7
call sub.msvcrt.dll_iswdigit
test eax, eax
je 0x401aac
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
mov cx, word [rax]
test cx, cx
jne 0x401a8f
xor ebp, ebp
cmp word [rdi], 0x49
jne 0x401acd
cmp word [rdi + 2], 0x36
jne 0x401acd
cmp word [rdi + 4], 0x34
jne 0x401acd
add rdi, 6
mov ebp, 0x40000
jmp 0x401b01
movzx eax, word [rdi]
cmp eax, 0x46
je 0x401af5
cmp eax, 0x4c
je 0x401af5
cmp eax, 0x4e
je 0x401af5
cmp eax, 0x68
je 0x401af0
cmp eax, 0x6c
jne 0x401b01
mov ebp, 0x20000
jmp 0x401af5
mov ebp, 0x10000
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
movzx ecx, word [rdi]
mov eax, 0x10063
or ecx, ebp
cmp ecx, eax
jg 0x401bca
je 0x401c0a
sub ecx, 0x43
je 0x401c0a
sub ecx, 0x10
je 0x401bb6
sub ecx, 0x10
je 0x401c0a
sub ecx, 0x10
je 0x401ba0
sub ecx, 0xffd0
je 0x401c0a
cmp ecx, 0x10
je 0x401c15
movzx ecx, word [rdi]
cmp ecx, 0x69
jg 0x401c5f
je 0x401c76
cmp ecx, 0x45
je 0x401b88
cmp ecx, 0x47
je 0x401b88
cmp ecx, 0x58
je 0x401c76
cmp ecx, 0x64
je 0x401c76
lea eax, [rcx - 0x65]
cmp eax, 2
ja 0x401c90
lea rcx, str.Floating_point____e____f____g__and___G__is_not_supported_by_the_WTL::CString_class.
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
call qword [sym.imp.KERNEL32.dll_DebugBreak]
jmp 0x401c90
mov rcx, qword [rbx]
add rbx, 8
test rcx, rcx
je 0x401c21
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov esi, eax
jmp 0x401c01
mov rcx, qword [rbx]
add rbx, 8
test rcx, rcx
je 0x401c21
call qword [sym.imp.KERNEL32.dll_lstrlenA]
jmp 0x401bb2
sub ecx, 0x10073
je 0x401c15
sub ecx, 0xffd0
je 0x401c0a
sub ecx, 0x10
je 0x401bed
sub ecx, 0x10
je 0x401c0a
cmp ecx, 0x10
jne 0x401b4e
mov rcx, qword [rbx]
add rbx, 8
test rcx, rcx
je 0x401c21
call sub.msvcrt.dll_wcslen
mov rsi, rax
cmp eax, r14d
cmovl esi, r14d
jmp 0x401c37
mov esi, 2
add rbx, 8
jmp 0x401c3f
mov rcx, qword [rbx]
add rbx, 8
test rcx, rcx
jne 0x401c28
mov esi, 6
jmp 0x401c3f
call qword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, r14d
cmovl eax, r14d
mov esi, eax
test esi, esi
je 0x401b4e
cmp esi, r13d
mov ebp, 0x20
cmovg r13d, esi
test r12d, r12d
mov esi, r13d
je 0x401c95
cmp r13d, r12d
cmovl r12d, r13d
mov esi, r12d
jmp 0x401c95
sub ecx, 0x6e
je 0x401c8c
dec ecx
je 0x401c76
dec ecx
je 0x401c76
sub ecx, 5
je 0x401c76
cmp ecx, 3
jne 0x401c90
lea eax, [r12 + r13]
mov ebp, 0x20
add rbx, 8
cmp eax, ebp
cmovl eax, ebp
mov esi, eax
jmp 0x401c95
add rbx, 8
mov ebp, 0x20
add r15d, esi
jmp 0x401c9d
add r15d, r14d
mov rcx, rdi
call qword [sym.imp.USER32.dll_CharNextW]
mov rdi, rax
cmp word [rax], 0
jne 0x4019ad
mov r14, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
mov r12d, 1
mov edx, r15d
mov rcx, r14
call fcn.004017ec
test rax, rax
je 0x401d10
mov rcx, qword [r14]
mov r8, rbp
mov rdx, rsi
call qword [sym.imp.USER32.dll_wvsprintfW]
mov rcx, r14
call fcn.00401328
mov rcx, qword [r14]
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov rcx, qword [r14]
mov dword [rcx - 8], eax
mov rcx, qword [r14]
movsxd rdx, eax
mov word [rcx + rdx*2], 0
mov eax, r12d
add rsp, 0x28
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret