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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x174
mov eax, dword [0x1006d080]
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 0x1000e212
test eax, eax
je 0x1000e212
cmp eax, 1
jbe 0x1000e0f6
test edi, edi
je 0x1000e0fe
cmp byte [edi], bl
je 0x1000e0fe
mov esi, eax
mov dl, byte [edi]
mov al, dl
cmp al, 0x25
je 0x1000dda7
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1b1
inc edi
mov byte [ecx], dl
inc ecx
mov dword [esp + 0x10], ecx
mov dl, byte [edi]
mov al, dl
test dl, dl
jne 0x1000dd88
cmp byte [edi], 0x25
jne 0x1000e0e5
mov al, byte [edi + 1]
cmp al, 0x25
jne 0x1000ddce
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1b1
mov byte [ecx], 0x25
inc ecx
add edi, 2
jmp 0x1000e0e1
inc edi
mov byte [esp + 0x38], 0x25
lea esi, [esp + 0x39]
cmp al, 0x30
je 0x1000ddf2
mov al, byte [edi]
cmp al, 0x2b
je 0x1000ddf2
cmp al, 0x2d
je 0x1000ddf2
cmp al, 0x20
je 0x1000ddf2
cmp al, 0x2a
je 0x1000ddf2
cmp al, 0x23
jne 0x1000de50
mov al, byte [edi]
cmp al, 0x2a
jne 0x1000de47
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e15c
push 1
call dword [0x10094a28]
push 0xa
lea eax, [esp + 0x7c]
push eax
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
call fcn.1003dae9
mov al, byte [esp + 0x84]
add esp, 0xc
test al, al
je 0x1000de4a
lea ecx, [esp + 0x78]
sub ecx, esi
mov byte [esi], al
inc esi
mov al, byte [ecx + esi]
test al, al
jne 0x1000de37
mov al, byte [edi + 1]
inc edi
jmp 0x1000ddd8
mov byte [esi], al
inc esi
mov al, byte [edi + 1]
inc edi
jmp 0x1000ddd8
movsx eax, al
push eax
call fcn.1003d770
add esp, 4
test eax, eax
je 0x1000de76
mov al, byte [edi]
inc edi
mov byte [esi], al
inc esi
movsx eax, byte [edi]
push eax
call fcn.1003d770
add esp, 4
test eax, eax
jne 0x1000de60
cmp byte [edi], 0x2e
jne 0x1000df06
mov al, byte [edi + 1]
inc edi
mov byte [esi], 0x2e
inc esi
cmp al, 0x2a
jne 0x1000dede
mov ecx, dword [esp + 0xc]
lea eax, [esp + 0x78]
mov dword [esp + 0x1c], eax
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e15c
push 1
call dword [0x10094a28]
push 0xa
lea eax, [esp + 0x7c]
push eax
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
call fcn.1003dae9
mov cl, byte [esp + 0x84]
add esp, 0xc
test cl, cl
je 0x1000df06
mov eax, dword [esp + 0x1c]
lea eax, [eax + 1]
mov byte [esi], cl
mov cl, byte [eax]
inc esi
test cl, cl
jne 0x1000ded0
jmp 0x1000df06
movsx eax, al
push eax
call fcn.1003d770
add esp, 4
test eax, eax
je 0x1000df06
nop
mov al, byte [edi]
inc edi
mov byte [esi], al
inc esi
movsx eax, byte [edi]
push eax
call fcn.1003d770
add esp, 4
test eax, eax
jne 0x1000def0
mov al, byte [edi]
cmp al, 0x68
je 0x1000df10
cmp al, 0x6c
jne 0x1000df16
inc edi
mov byte [esi], al
inc esi
mov al, byte [edi]
cmp al, 0x63
je 0x1000e0ab
cmp al, 0x73
je 0x1000e040
lea eax, [esp + 0x78]
mov dword [esp + 0x1c], eax
mov al, byte [edi]
cmp al, 0x70
je 0x1000dfcf
cmp al, 0x50
je 0x1000dfcf
mov byte [esi], al
mov byte [esi + 1], 0
cmp al, 0x61
je 0x1000df8c
cmp al, 0x41
je 0x1000df8c
cmp al, 0x65
je 0x1000df8c
cmp al, 0x45
je 0x1000df8c
cmp al, 0x66
je 0x1000df8c
cmp al, 0x46
je 0x1000df8c
cmp al, 0x67
je 0x1000df8c
cmp al, 0x47
je 0x1000df8c
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e15c
push 1
call dword [0x10094a28]
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
lea eax, [esp + 0x3c]
push eax
jmp 0x1000dff3
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e15c
push 1
call dword [0x10094a28]
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.1000c140
add esp, 0x10
jmp 0x1000e003
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e15c
push 1
call dword [0x10094a28]
mov eax, dword [sym.CLEO.asi_opcodeParams]
push dword [eax]
push str._08X
lea eax, [esp + 0x80]
push eax
call fcn.1000c140
add esp, 0xc
cmp byte [esp + 0x78], 0
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
je 0x1000e0a8
mov edx, dword [esp + 0x1c]
nop word [eax + eax]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1b1
mov al, byte [edx]
inc edx
mov byte [ecx], al
inc ecx
mov dword [esp + 0x10], ecx
cmp byte [edx], 0
jne 0x1000e020
inc edi
jmp 0x1000e0e5
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e15c
push 0xff
lea eax, [esp + 0x7c]
mov byte [esp + 0x17b], 0
push eax
xor edx, edx
call fcn.10023c00
mov edx, eax
test edx, edx
jne 0x1000e076
mov edx, str._INVALID_STR_
jmp 0x1000e07b
cmp byte [edx], 0
je 0x1000e0a0
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1b1
mov al, byte [edx]
inc edx
mov byte [ecx], al
inc ecx
mov dword [esp + 0x10], ecx
cmp byte [edx], 0
jne 0x1000e083
inc edi
jmp 0x1000e0e5
mov ecx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
inc edi
jmp 0x1000e0e5
mov esi, dword [esp + 0x14]
mov eax, ebx
inc ebx
cmp eax, esi
jae 0x1000e1b1
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx + 0x14]
cmp byte [eax], 0
je 0x1000e15c
push 1
call dword [0x10094a28]
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 0x1000dd84
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
cmp ebx, eax
jae 0x1000e1b5
mov eax, dword [esi + 0x14]
cmp byte [eax], 0
je 0x1000e136
push 1
lea eax, [esp + 0x24]
mov ecx, esi
push eax
call fcn.10025660
cmp dword [eax + 0x14], 0xf
jbe 0x1000e11c
mov eax, dword [eax]
push eax
push str.More_params_than_slots_in_formatted_string_in_script__s
push 1
push esi
call fcn.1000c5b0
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.1000b020
mov ecx, esi
call fcn.1000ed20
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.100362d6
mov esp, ebp
pop ebp
ret
push 1
lea eax, [esp + 0x24]
push eax
call fcn.10025660
cmp dword [eax + 0x14], 0xf
jbe 0x1000e170
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.1000c5b0
add esp, 0x10
lea ecx, [esp + 0x20]
call fcn.1000b020
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.100362d6
mov esp, ebp
pop ebp
ret
mov esi, dword [esp + 0xc]
push 1
lea eax, [esp + 0x24]
mov ecx, esi
push eax
call fcn.10025660
cmp dword [eax + 0x14], 0xf
jbe 0x1000e1cb
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.1000c5b0
add esp, 0x14
lea ecx, [esp + 0x20]
call fcn.1000b020
mov ecx, esi
call fcn.1000ed20
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.100362d6
mov esp, ebp
pop ebp
ret
push str.ReadFormattedString_invalid_input_arg_s_
push 1
push esi
call fcn.1000c5b0
add esp, 0xc
mov ecx, esi
call fcn.1000ed20
mov ecx, dword [esp + 0x17c]
or eax, 0xffffffff
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100362d6
mov esp, ebp
pop ebp
ret