Function at 0x1000a3a0
Capabilities:
Print debug messages

Disassembly:
sub esp, 0x14
mov eax, dword [esp + 0x18]
push ebx
mov ebx, dword [esp + 0x20]
push ebp
push esi
push edi
xor edi, edi
mov dword [esp + 0x20], ebx
mov ebp, ecx
mov dword [esp + 0x2c], edi
mov esi, eax
mov dword [esp + 0x14], ebp
cmp word [eax], di
je 0x1000a70f
mov ebp, dword [sym.imp.USER32.dll_CharNextW]
cmp word [esi], 0x25
jne 0x1000a6ef
push esi
call ebp
mov esi, eax
movzx eax, word [esi]
cmp eax, 0x25
je 0x1000a6ef
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x1c], edi
mov dword [esp + 0x10], ecx
test ax, ax
je 0x1000a450
mov edi, dword [esp + 0x2c]
cmp ax, 0x23
jne 0x1000a40b
add edi, 2
jmp 0x1000a434
cmp ax, 0x2a
jne 0x1000a41c
mov eax, dword [ebx]
add ebx, 4
mov dword [esp + 0x10], eax
jmp 0x1000a434
cmp ax, 0x2d
je 0x1000a434
cmp ax, 0x2b
je 0x1000a434
cmp ax, 0x30
je 0x1000a434
cmp ax, 0x20
jne 0x1000a441
push esi
call ebp
mov esi, eax
movzx eax, word [esi]
test ax, ax
jne 0x1000a400
cmp dword [esp + 0x10], 0
mov dword [esp + 0x2c], edi
mov edi, dword [esp + 0x1c]
jne 0x1000a484
push esi
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__wtoi]
movzx ecx, word [esi]
add esp, 4
mov dword [esp + 0x10], eax
test cx, cx
je 0x1000a484
movzx ecx, cx
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_iswdigit]
add esp, 4
test eax, eax
je 0x1000a484
push esi
call ebp
mov esi, eax
movzx ecx, word [esi]
test cx, cx
jne 0x1000a466
cmp word [esi], 0x2e
mov dword [esp + 0x1c], 0
jne 0x1000a4e0
push esi
call ebp
mov esi, eax
push esi
cmp word [esi], 0x2a
jne 0x1000a4ad
mov eax, dword [ebx]
add ebx, 4
mov dword [esp + 0x20], eax
call ebp
mov esi, eax
jmp 0x1000a4e0
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__wtoi]
movzx ecx, word [esi]
add esp, 4
mov dword [esp + 0x1c], eax
test cx, cx
je 0x1000a4e0
movzx ecx, cx
push ecx
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_iswdigit]
add esp, 4
test eax, eax
je 0x1000a4e0
push esi
call ebp
mov esi, eax
movzx ecx, word [esi]
test cx, cx
jne 0x1000a4c2
movzx eax, word [esi]
mov dword [esp + 0x18], 0
cmp eax, 0x49
jne 0x1000a523
movzx eax, word [esi + 2]
cmp eax, 0x36
jne 0x1000a50d
cmp word [esi + 4], 0x34
jne 0x1000a50d
add esi, 6
mov dword [esp + 0x18], 0x40000
jmp case.0x1000a532.71
cmp eax, 0x33
jne 0x1000a51e
cmp word [esi + 4], 0x32
jne 0x1000a51e
add esi, 6
jmp case.0x1000a532.71
add esi, 2
jmp case.0x1000a532.71
add eax, 0xffffffba
cmp eax, 0x26
ja case.0x1000a532.71
movzx eax, byte [eax + 0x1000a86c]
jmp dword [eax*4 + 0x1000a85c]
mov dword [esp + 0x18], 0x10000
jmp case.0x1000a532.70
mov dword [esp + 0x18], 0x20000
push esi
call ebp
mov esi, eax
movzx eax, word [esi]
or eax, dword [esp + 0x18]
cmp eax, 0x10063
ja 0x1000a5f0
je 0x1000a57e
cmp eax, 0x73
ja 0x1000a5e2
je 0x1000a5c9
cmp eax, 0x43
je 0x1000a57e
cmp eax, 0x53
je 0x1000a5ad
cmp eax, 0x63
jne 0x1000a655
mov edi, 2
add ebx, 4
mov eax, dword [esp + 0x10]
cmp edi, eax
cmovg eax, edi
mov edi, eax
mov eax, dword [esp + 0x1c]
test eax, eax
je case.0x1000a66b.70
cmp edi, eax
cmovl eax, edi
mov edi, eax
add dword [esp + 0x2c], edi
mov edi, dword [esp + 0x2c]
jmp 0x1000a6fc
mov eax, dword [ebx]
add ebx, 4
test eax, eax
jne 0x1000a5bb
lea edi, [eax + 6]
jmp 0x1000a586
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov edi, eax
jmp 0x1000a642
mov eax, dword [ebx]
add ebx, 4
test eax, eax
jne 0x1000a5d7
lea edi, [eax + 6]
jmp 0x1000a586
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, eax
jmp 0x1000a642
sub eax, 0x10043
je 0x1000a57e
sub eax, 0x10
je 0x1000a5ad
jmp 0x1000a655
cmp eax, 0x20053
ja 0x1000a60d
je 0x1000a61d
cmp eax, 0x10073
je 0x1000a5ad
cmp eax, 0x20043
je 0x1000a57e
jmp 0x1000a655
sub eax, 0x20063
je 0x1000a57e
sub eax, 0x10
jne 0x1000a655
mov edi, dword [ebx]
add ebx, 4
test edi, edi
jne 0x1000a630
mov edi, 6
jmp 0x1000a586
lea ecx, [edi + 2]
mov ax, word [edi]
add edi, 2
test ax, ax
jne 0x1000a633
sub edi, ecx
sar edi, 1
cmp edi, 1
mov eax, 1
cmovl edi, eax
test edi, edi
jne 0x1000a586
movzx eax, word [esi]
add eax, 0xffffffbb
cmp eax, 0x33
ja case.0x1000a66b.70
movzx eax, byte [eax + 0x1000a8a8]
jmp dword [eax*4 + 0x1000a894]
mov eax, dword [esp + 0x18]
mov edi, 0x20
and eax, 0x40000
neg eax
sbb eax, eax
and eax, 4
add eax, 4
add ebx, eax
mov eax, dword [esp + 0x1c]
add eax, dword [esp + 0x10]
cmp eax, edi
cmovge edi, eax
add dword [esp + 0x2c], edi
mov edi, dword [esp + 0x2c]
jmp 0x1000a6fc
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 [esp + 0x2c], edi
mov edi, dword [esp + 0x2c]
jmp 0x1000a6fc
mov eax, dword [esp + 0x1c]
mov edi, 0x20
add eax, dword [esp + 0x10]
add ebx, 4
cmp eax, edi
jl case.0x1000a66b.70
mov edi, eax
add dword [esp + 0x2c], edi
mov edi, dword [esp + 0x2c]
jmp 0x1000a6fc
add ebx, 4
add dword [esp + 0x2c], edi
mov edi, dword [esp + 0x2c]
jmp 0x1000a6fc
push esi
call ebp
sub eax, esi
sar eax, 1
add edi, eax
mov dword [esp + 0x2c], edi
push esi
call ebp
mov esi, eax
cmp word [esi], 0
jne 0x1000a3d0
mov ebp, dword [esp + 0x14]
mov ebx, dword [ebp]
or esi, 0xffffffff
cmp dword [ebx - 0xc], 1
lea edi, [ebx - 0xc]
mov eax, dword [esp + 0x2c]
jg 0x1000a727
cmp eax, dword [ebx - 4]
jle 0x1000a790
mov ebp, dword [ebx - 8]
cmp eax, ebp
mov ecx, dword [esp + 0x14]
cmovl eax, ebp
push eax
mov dword [esp + 0x30], eax
call fcn.10001920
test eax, eax
je 0x1000a84e
mov edx, dword [esp + 0x2c]
lea eax, [ebp*2 + 2]
push eax
push ebx
mov ebx, dword [esp + 0x1c]
lea edx, [edx*2 + 2]
mov ecx, dword [ebx]
call fcn.100019e0
push eax
call fcn.10001b20
mov eax, dword [ebx]
add esp, 0xc
mov dword [eax - 8], ebp
cmp edi, 0x10023024
je 0x1000a78e
mov eax, esi
lock xadd dword [edi], eax
dec eax
test eax, eax
jg 0x1000a78e
push edi
call fcn.1000e2ae
add esp, 4
mov ebp, ebx
mov ecx, dword [ebp]
test ecx, ecx
je 0x1000a84e
push dword [esp + 0x20]
mov eax, dword [ecx - 4]
push 0
push dword [esp + 0x30]
inc eax
push eax
push ecx
call fcn.1000a390
push dword [eax + 4]
push dword [eax]
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll___stdio_common_vswprintf_s]
mov ebx, dword [ebp]
add esp, 0x1c
cmp dword [ebx - 0xc], 1
lea edi, [ebx - 0xc]
jle 0x1000a829
lea eax, [ebx - 0xc]
cmp eax, 0x10023024
je 0x1000a7f4
lock xadd dword [edi], esi
dec esi
test esi, esi
jg 0x1000a7ec
mov eax, dword [ebp]
sub eax, 0xc
push eax
call fcn.1000e2ae
add esp, 4
mov eax, dword [0x10023034]
mov dword [ebp], eax
push dword [edi + 4]
mov ecx, ebp
call fcn.10001920
test eax, eax
je 0x1000a829
mov eax, dword [edi + 4]
mov ecx, dword [ebp]
lea esi, [eax*2 + 2]
mov eax, dword [ecx - 4]
push esi
push ebx
lea edx, [eax*2 + 2]
call fcn.100019e0
push eax
call fcn.10001b20
add esp, 0xc
push dword [ebp]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov ecx, dword [ebp]
xor edx, edx
pop edi
pop esi
mov dword [ecx - 8], eax
mov ecx, dword [ebp]
pop ebp
pop ebx
mov word [ecx + eax*2], dx
lea eax, [edx + 1]
add esp, 0x14
ret 8
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x14
ret 8