Function at 0x1000dd40
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x174
mov eax, dword [0x1003c040]
xor eax, esp
mov dword [esp + 0x170], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, ecx
mov dword [esp + 0x14], edx
xor ebx, ebx
mov dword [esp + 8], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edx
push edi
mov edi, dword [ebp + 0xc]
test edx, edx
je 0x1000e232
test eax, eax
je 0x1000e232
cmp eax, 1
jbe 0x1000e116
test edi, edi
je 0x1000e11e
cmp byte [edi], bl
je 0x1000e11e
mov esi, eax
mov cl, byte [edi]
mov al, cl
cmp al, 0x25
je 0x1000ddc5
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1d1
inc edi
mov byte [edx], cl
inc edx
mov dword [esp + 0x10], edx
mov cl, byte [edi]
mov al, cl
test cl, cl
jne 0x1000dda6
cmp byte [edi], 0x25
jne 0x1000e105
mov al, byte [edi + 1]
cmp al, 0x25
jne 0x1000ddec
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1d1
mov byte [edx], 0x25
inc edx
add edi, 2
jmp 0x1000e101
inc edi
mov byte [esp + 0x38], 0x25
lea esi, [esp + 0x39]
cmp al, 0x30
je 0x1000de10
mov al, byte [edi]
cmp al, 0x2b
je 0x1000de10
cmp al, 0x2d
je 0x1000de10
cmp al, 0x20
je 0x1000de10
cmp al, 0x2a
je 0x1000de10
cmp al, 0x23
jne 0x1000de6f
mov al, byte [edi]
cmp al, 0x2a
jne 0x1000de66
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e17c
push 1
call dword [0x10062018]
push 0xa
lea eax, [esp + 0x7c]
push eax
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itoa]
mov al, byte [esp + 0x84]
add esp, 0xc
test al, al
je 0x1000de69
lea ecx, [esp + 0x78]
sub ecx, esi
mov byte [esi], al
inc esi
mov al, byte [ecx + esi]
test al, al
jne 0x1000de56
mov al, byte [edi + 1]
inc edi
jmp 0x1000ddf6
mov byte [esi], al
inc esi
mov al, byte [edi + 1]
inc edi
jmp 0x1000ddf6
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
je 0x1000de97
mov al, byte [edi]
inc edi
mov byte [esi], al
inc esi
movsx eax, byte [edi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1000de80
cmp byte [edi], 0x2e
jne 0x1000df28
mov al, byte [edi + 1]
inc edi
mov byte [esi], 0x2e
inc esi
cmp al, 0x2a
jne 0x1000df00
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x78]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e17c
push 1
call dword [0x10062018]
push 0xa
lea eax, [esp + 0x7c]
push eax
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll__itoa]
mov cl, byte [esp + 0x84]
add esp, 0xc
test cl, cl
je 0x1000df28
mov eax, dword [esp + 0x1c]
lea eax, [eax + 1]
mov byte [esi], cl
mov cl, byte [eax]
inc esi
test cl, cl
jne 0x1000def2
jmp 0x1000df28
movsx eax, al
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
je 0x1000df28
mov al, byte [edi]
inc edi
mov byte [esi], al
inc esi
movsx eax, byte [edi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_isdigit]
add esp, 4
test eax, eax
jne 0x1000df11
mov al, byte [edi]
cmp al, 0x68
je 0x1000df32
cmp al, 0x6c
jne 0x1000df38
inc edi
mov byte [esi], al
inc esi
mov al, byte [edi]
cmp al, 0x63
je 0x1000e0cb
cmp al, 0x73
je 0x1000e060
lea eax, [esp + 0x78]
mov dword [esp + 0x1c], eax
mov al, byte [edi]
cmp al, 0x70
je 0x1000dff1
cmp al, 0x50
je 0x1000dff1
mov byte [esi], al
mov byte [esi + 1], 0
cmp al, 0x61
je 0x1000dfae
cmp al, 0x41
je 0x1000dfae
cmp al, 0x65
je 0x1000dfae
cmp al, 0x45
je 0x1000dfae
cmp al, 0x66
je 0x1000dfae
cmp al, 0x46
je 0x1000dfae
cmp al, 0x67
je 0x1000dfae
cmp al, 0x47
je 0x1000dfae
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e17c
push 1
call dword [0x10062018]
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
lea eax, [esp + 0x3c]
push eax
jmp 0x1000e015
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e17c
push 1
call dword [0x10062018]
mov eax, dword [sym.CLEO.asi_opcodeParams]
sub esp, 8
movss xmm0, dword [eax]
lea eax, [esp + 0x40]
cvtps2pd xmm0, xmm0
movsd qword [esp], xmm0
push eax
lea eax, [esp + 0x84]
push eax
call fcn.1000c0b0
add esp, 0x10
jmp 0x1000e025
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e17c
push 1
call dword [0x10062018]
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
push str._08X
lea eax, [esp + 0x80]
push eax
call fcn.1000c0b0
add esp, 0xc
cmp byte [esp + 0x78], 0
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
je 0x1000e0c8
mov ecx, dword [esp + 0x1c]
nop dword [eax]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1d1
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
mov dword [esp + 0x10], edx
cmp byte [ecx], 0
jne 0x1000e040
inc edi
jmp 0x1000e105
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e17c
push 0xff
lea eax, [esp + 0x7c]
mov byte [esp + 0x17b], 0
push eax
xor edx, edx
call fcn.100211f0
mov ecx, eax
test ecx, ecx
jne 0x1000e096
mov ecx, str._INVALID_STR_
jmp 0x1000e09b
cmp byte [ecx], 0
je 0x1000e0c0
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1d1
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
mov dword [esp + 0x10], edx
cmp byte [ecx], 0
jne 0x1000e0a3
inc edi
jmp 0x1000e105
mov edx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
inc edi
jmp 0x1000e105
mov esi, dword [esp + 0x14]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1d1
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e17c
push 1
call dword [0x10062018]
mov eax, dword [sym.CLEO.asi_opcodeParams]
mov edx, dword [esp + 0x10]
mov al, byte [eax]
mov byte [edx], al
inc edx
inc edi
mov dword [esp + 0x10], edx
cmp byte [edi], 0
jne 0x1000dda2
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
cmp ebx, eax
jae 0x1000e1d5
mov eax, dword [esi + 0x14]
cmp byte [eax], 0
je 0x1000e156
push 1
lea eax, [esp + 0x24]
mov ecx, esi
push eax
call fcn.10022c70
cmp dword [eax + 0x14], 0xf
jbe 0x1000e13c
mov eax, dword [eax]
push eax
push str.More_params_than_slots_in_formatted_string_in_script__s
push 1
push esi
call fcn.1000c500
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.1000b010
mov ecx, esi
call fcn.1000edb0
mov eax, dword [esp + 0x18]
mov byte [eax + ebx], 0
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x170]
xor ecx, esp
call fcn.1002d081
mov esp, ebp
pop ebp
ret
push 1
lea eax, [esp + 0x24]
push eax
call fcn.10022c70
cmp dword [eax + 0x14], 0xf
jbe 0x1000e190
mov eax, dword [eax]
mov esi, dword [esp + 0xc]
push eax
push str.Less_params_than_slots_in_formatted_string_in_script__s
push 1
push esi
call fcn.1000c500
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.1000b010
mov eax, dword [esp + 0x18]
inc dword [esi + 0x14]
mov byte [eax + ebx], 0
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x170]
xor ecx, esp
call fcn.1002d081
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0xc]
push 1
lea eax, [esp + 0x24]
mov ecx, esi
push eax
call fcn.10022c70
cmp dword [eax + 0x14], 0xf
jbe 0x1000e1eb
mov eax, dword [eax]
mov edi, dword [esp + 0x14]
push eax
push edi
push str.Target_buffer_too_small___d__to_read_whole_formatted_string_in_script__s
push 1
push esi
call fcn.1000c500
add esp, 0x14
lea ecx, [esp + 0x20]
call fcn.1000b010
mov ecx, esi
call fcn.1000edb0
mov eax, dword [esp + 0x18]
mov byte [edi + eax - 1], 0
or eax, 0xffffffff
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x170]
xor ecx, esp
call fcn.1002d081
mov esp, ebp
pop ebp
ret
push str.ReadFormattedString_invalid_input_arg_s_
push 1
push esi
call fcn.1000c500
add esp, 0xc
mov ecx, esi
call fcn.1000edb0
mov ecx, dword [esp + 0x17c]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1002d081
mov esp, ebp
pop ebp
ret