Function at 0x1000fc9a
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x24
mov esi, ecx
mov eax, dword [0x1006700c]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, dword [ecx]
mov ecx, dword [eax + 4]
add ecx, esi
lea edi, [ebp - 0x24]
push edi
call fcn.1001188a
mov ecx, edi
push 0x10069fe8
call fcn.10023d30
mov edi, eax
mov eax, dword [eax]
mov ebx, dword [eax + 0x2c]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 0xa
call ebx
mov edi, eax
lea ebx, [ebp - 0x24]
mov ecx, ebx
call fcn.10013740
movzx eax, di
mov ecx, esi
push eax
call fcn.100023f0
mov ecx, esi
call fcn.10001880
xor eax, eax
dec eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov dword [ebp - 0x28], ebx
mov dword [ebx + 8], eax
lea ecx, [esi + 4]
lea edi, [ebp - 0x18]
mov dword [ebp - 0x30], ecx
push edi
call fcn.10008d7e
mov ebx, dword [edi + 4]
cmp ebx, 0x7ffffff8
jae 0x1000febc
mov ecx, dword [ebp - 0x18]
cmp ebx, 4
jbe 0x1000fd61
mov dword [ebp - 0x2c], ecx
mov edi, ebx
or edi, 3
inc edi
js 0x1000fec4
lea eax, [edi + edi]
push eax
call fcn.1002af2f
add esp, 4
mov dword [ebp - 0x24], eax
or edi, 0x80000000
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x20], ebx
mov ecx, dword [ebp - 0x2c]
jmp 0x1000fd67
lea eax, [ebp - 0x24]
mov byte [eax + 0xb], bl
lea edi, [eax + ebx*2]
cmp eax, ecx
ja 0x1000fd76
cmp edi, ecx
ja 0x1000fe9e
test ebx, ebx
je 0x1000fd87
add ebx, ebx
push ebx
push ecx
push eax
call fcn.1002e6d0
add esp, 0xc
mov word [edi], 0
mov eax, dword [0x10069afc]
test al, 0x10
je 0x1000fdc1
movzx eax, byte [ebp - 0x19]
mov ecx, eax
and ecx, 0x7f
test al, al
cmovs ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x24]
lea edx, [ebp - 0x24]
cmovns eax, edx
push ecx
push eax
push 0x10069cb4
call fcn.100065e4
add esp, 0xc
mov eax, dword [0x10069afc]
test al, 0x20
je 0x1000fe05
cmp dword [0x10069a88], 0
je 0x1000fe05
lea eax, [ebp - 0x24]
movzx ecx, byte [eax + 0xb]
mov edx, ecx
and edx, 0x7f
test cl, cl
cmovs edx, dword [eax + 4]
cmovs eax, dword [eax]
push edx
push eax
push 0x10069a44
call fcn.100065e4
add esp, 0xc
cmp dword [esi + 0x88], 2
jl 0x1000fe05
mov ecx, 0x10069a44
call fcn.10001880
test byte [0x10069afc], 0x40
je 0x1000fe2d
call dword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
test eax, eax
je 0x1000fe2d
cmp byte [ebp - 0x19], 0
jns 0x1000fe24
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x28], eax
push dword [ebp - 0x28]
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
cmp dword [esi + 0x88], 3
jne 0x1000fe3c
call dword [sym.imp.KERNEL32.dll_DebugBreak]
cmp byte [ebp - 0x19], 0
jns 0x1000fe4d
push dword [ebp - 0x24]
call fcn.1002afb4
add esp, 4
mov eax, dword [esi]
mov eax, dword [eax + 4]
mov dword [esi + eax], 0x1005b9f4
mov dword [esi + 4], 0x1005ba00
cmp byte [esi + 0x2f], 0
jns 0x1000fe71
push dword [esi + 0x24]
call fcn.1002afb4
add esp, 4
add esi, 0x38
mov edi, dword [ebp - 0x30]
mov ecx, edi
call fcn.10001582
mov ecx, edi
call fcn.10001380
mov ecx, esi
call fcn.10001000
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1002ba3a
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret
push str.char_traits::copy_overlapped_range
push str.__s2_____s1____s2_____s1____n
push 0x13b
push str....._third_partylibc_srcinclude__stringchar_traits.h
push str._s:_d:_assertion__s_failed:__s_n
call fcn.1002a25c
lea ecx, [ebp - 0x24]
call fcn.10006574
call fcn.1005384d
int3