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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x174
mov eax, dword [0x1006e0c0]
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 ecx, edx
mov dword [esp + 0xc], ecx
push edi
mov edi, dword [ebp + 0xc]
test edx, edx
je 0x1000e2e2
test eax, eax
je 0x1000e2e2
cmp eax, 1
jbe 0x1000e1c6
test edi, edi
je 0x1000e1ce
cmp byte [edi], bl
je 0x1000e1ce
mov esi, eax
mov dl, byte [edi]
mov al, dl
cmp al, 0x25
je 0x1000de77
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e281
inc edi
mov byte [ecx], dl
inc ecx
mov dword [esp + 0x10], ecx
mov dl, byte [edi]
mov al, dl
test dl, dl
jne 0x1000de58
cmp byte [edi], 0x25
jne 0x1000e1b5
mov al, byte [edi + 1]
cmp al, 0x25
jne 0x1000de9e
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e281
mov byte [ecx], 0x25
inc ecx
add edi, 2
jmp 0x1000e1b1
inc edi
mov byte [esp + 0x38], 0x25
lea esi, [esp + 0x39]
cmp al, 0x30
je 0x1000dec2
mov al, byte [edi]
cmp al, 0x2b
je 0x1000dec2
cmp al, 0x2d
je 0x1000dec2
cmp al, 0x20
je 0x1000dec2
cmp al, 0x2a
je 0x1000dec2
cmp al, 0x23
jne 0x1000df20
mov al, byte [edi]
cmp al, 0x2a
jne 0x1000df17
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e22c
push 1
call dword [0x10095910]
push 0xa
lea eax, [esp + 0x7c]
push eax
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
call fcn.10039839
mov al, byte [esp + 0x84]
add esp, 0xc
test al, al
je 0x1000df1a
lea ecx, [esp + 0x78]
sub ecx, esi
mov byte [esi], al
inc esi
mov al, byte [ecx + esi]
test al, al
jne 0x1000df07
mov al, byte [edi + 1]
inc edi
jmp 0x1000dea8
mov byte [esi], al
inc esi
mov al, byte [edi + 1]
inc edi
jmp 0x1000dea8
movsx eax, al
push eax
call fcn.10039430
add esp, 4
test eax, eax
je 0x1000df46
mov al, byte [edi]
inc edi
mov byte [esi], al
inc esi
movsx eax, byte [edi]
push eax
call fcn.10039430
add esp, 4
test eax, eax
jne 0x1000df30
cmp byte [edi], 0x2e
jne 0x1000dfd6
mov al, byte [edi + 1]
inc edi
mov byte [esi], 0x2e
inc esi
cmp al, 0x2a
jne 0x1000dfae
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x78]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e22c
push 1
call dword [0x10095910]
push 0xa
lea eax, [esp + 0x7c]
push eax
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
call fcn.10039839
mov cl, byte [esp + 0x84]
add esp, 0xc
test cl, cl
je 0x1000dfd6
mov eax, dword [esp + 0x1c]
lea eax, [eax + 1]
mov byte [esi], cl
mov cl, byte [eax]
inc esi
test cl, cl
jne 0x1000dfa0
jmp 0x1000dfd6
movsx eax, al
push eax
call fcn.10039430
add esp, 4
test eax, eax
je 0x1000dfd6
nop
mov al, byte [edi]
inc edi
mov byte [esi], al
inc esi
movsx eax, byte [edi]
push eax
call fcn.10039430
add esp, 4
test eax, eax
jne 0x1000dfc0
mov al, byte [edi]
cmp al, 0x68
je 0x1000dfe0
cmp al, 0x6c
jne 0x1000dfe6
inc edi
mov byte [esi], al
inc esi
mov al, byte [edi]
cmp al, 0x63
je 0x1000e17b
cmp al, 0x73
je 0x1000e110
lea eax, [esp + 0x78]
mov dword [esp + 0x1c], eax
mov al, byte [edi]
cmp al, 0x70
je 0x1000e09f
cmp al, 0x50
je 0x1000e09f
mov byte [esi], al
mov byte [esi + 1], 0
cmp al, 0x61
je 0x1000e05c
cmp al, 0x41
je 0x1000e05c
cmp al, 0x65
je 0x1000e05c
cmp al, 0x45
je 0x1000e05c
cmp al, 0x66
je 0x1000e05c
cmp al, 0x46
je 0x1000e05c
cmp al, 0x67
je 0x1000e05c
cmp al, 0x47
je 0x1000e05c
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e22c
push 1
call dword [0x10095910]
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
lea eax, [esp + 0x3c]
push eax
jmp 0x1000e0c3
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e22c
push 1
call dword [0x10095910]
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.1000c1e0
add esp, 0x10
jmp 0x1000e0d3
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e22c
push 1
call dword [0x10095910]
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
push str._08X
lea eax, [esp + 0x80]
push eax
call fcn.1000c1e0
add esp, 0xc
cmp byte [esp + 0x78], 0
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
je 0x1000e178
mov edx, dword [esp + 0x1c]
nop word [eax + eax]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e281
mov al, byte [edx]
inc edx
mov byte [ecx], al
inc ecx
mov dword [esp + 0x10], ecx
cmp byte [edx], 0
jne 0x1000e0f0
inc edi
jmp 0x1000e1b5
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e22c
push 0xff
lea eax, [esp + 0x7c]
mov byte [esp + 0x17b], 0
push eax
xor edx, edx
call fcn.10024c00
mov edx, eax
test edx, edx
jne 0x1000e146
mov edx, str._INVALID_STR_
jmp 0x1000e14b
cmp byte [edx], 0
je 0x1000e170
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e281
mov al, byte [edx]
inc edx
mov byte [ecx], al
inc ecx
mov dword [esp + 0x10], ecx
cmp byte [edx], 0
jne 0x1000e153
inc edi
jmp 0x1000e1b5
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
inc edi
jmp 0x1000e1b5
mov esi, dword [esp + 0x14]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e281
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e22c
push 1
call dword [0x10095910]
mov eax, dword [sym.CLEO.asi_opcodeParams]
mov ecx, dword [esp + 0x10]
mov al, byte [eax]
mov byte [ecx], al
inc ecx
inc edi
mov dword [esp + 0x10], ecx
cmp byte [edi], 0
jne 0x1000de54
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
cmp ebx, eax
jae 0x1000e285
mov eax, dword [esi + 0x14]
cmp byte [eax], 0
je 0x1000e206
push 1
lea eax, [esp + 0x24]
mov ecx, esi
push eax
call fcn.10026660
cmp dword [eax + 0x14], 0xf
jbe 0x1000e1ec
mov eax, dword [eax]
push eax
push str.More_params_than_slots_in_formatted_string_in_script__s
push 1
push esi
call fcn.1000c660
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.1000b0b0
mov ecx, esi
call fcn.1000ee60
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.10031fed
mov esp, ebp
pop ebp
ret
push 1
lea eax, [esp + 0x24]
push eax
call fcn.10026660
cmp dword [eax + 0x14], 0xf
jbe 0x1000e240
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.1000c660
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.1000b0b0
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.10031fed
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0xc]
push 1
lea eax, [esp + 0x24]
mov ecx, esi
push eax
call fcn.10026660
cmp dword [eax + 0x14], 0xf
jbe 0x1000e29b
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.1000c660
add esp, 0x14
lea ecx, [esp + 0x20]
call fcn.1000b0b0
mov ecx, esi
call fcn.1000ee60
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.10031fed
mov esp, ebp
pop ebp
ret
push str.ReadFormattedString_invalid_input_arg_s_
push 1
push esi
call fcn.1000c660
add esp, 0xc
mov ecx, esi
call fcn.1000ee60
mov ecx, dword [esp + 0x17c]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.10031fed
mov esp, ebp
pop ebp
ret