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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov ebx, dword [ebp + 0x10]
mov edi, dword [ebp + 0xc]
push 0
push 1
push 0x1eb1cf0
push ebx
push edi
call fcn.01d96090
add esp, 0x14
mov byte [esp + 4], al
test al, al
je 0x1d91e54
test ebx, ebx
je 0x1d925c4
inc edi
dec ebx
mov dword [esp + 0x2c], 0xffffffff
jmp 0x1d91e7d
mov dword [esp + 0x2c], 1
push 0
push 1
push 0x1eb1cee
push ebx
push edi
call fcn.01d96090
add esp, 0x14
test al, al
je 0x1d91e7d
test ebx, ebx
je 0x1d925c4
inc edi
dec ebx
mov esi, dword [ebp + 8]
cmp ebx, 3
je 0x1d91eaa
cmp ebx, 1
je 0x1d91e93
test ebx, ebx
jne 0x1d91eca
jmp 0x1d92585
cmp byte [edi], 0x30
jne 0x1d91eca
mov dword [esi + 4], 0
mov dword [esi], 0
jmp 0x1d925b5
movzx eax, word [edi]
xor ax, word [0x1eb22b4]
movzx ecx, byte [edi + 2]
xor cl, byte [0x1eb22b6]
movzx ecx, cl
or cx, ax
je 0x1d9258c
cvtsi2sd xmm0, dword [esp + 0x2c]
movsd qword [esp + 0x58], xmm0
xor ecx, ecx
xor edx, edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 8], edi
lea eax, [edi + ebx]
mov dword [esp + 0x18], eax
xor ecx, ecx
xor esi, esi
xor edi, edi
mov dword [esp + 4], ebx
nop word [eax + eax]
mov eax, dword [esp + 8]
movsx ebx, byte [eax + ecx]
mov eax, ebx
add al, 0xc6
cmp al, 0xf6
jb 0x1d91f90
mov eax, 0xcccccccc
cmp eax, esi
mov eax, 0xccccccc
sbb eax, edi
jl 0x1d92582
mov eax, esi
mov edx, 0xa
mul edx
add ebx, 0xffffffd0
lea esi, [edi + edi*4]
lea edi, [edx + esi*2]
mov edx, ebx
mov esi, 0xffffffff
xor edx, esi
mov esi, eax
cmp edx, eax
mov eax, SysReAllocString
sbb eax, edi
jl 0x1d92582
add esi, ebx
adc edi, 0
inc ecx
mov ebx, dword [esp + 4]
cmp ebx, ecx
jne 0x1d91f00
test ebx, ebx
je 0x1d92582
mov dword [esp + 0x10], 0
mov edx, 1
xor ebx, ebx
mov dword [esp + 8], 0
mov dword [esp + 4], 0
jmp 0x1d920d0
cmp bl, 0x2e
jne 0x1d91fcd
mov eax, dword [esp + 8]
add eax, ecx
inc eax
mov dword [esp], eax
mov eax, dword [esp + 4]
dec eax
sub eax, ecx
jne 0x1d91fff
xor eax, eax
mov edx, 1
mov ebx, dword [esp]
mov dword [esp + 0x18], ebx
mov dword [esp + 8], 0
mov dword [esp + 0x10], 0
xor ebx, ebx
jmp 0x1d920ad
test ecx, ecx
je 0x1d92582
mov eax, dword [esp + 8]
add eax, ecx
sub dword [esp + 4], ecx
mov dword [esp + 0x10], 0
mov edx, 1
xor ebx, ebx
mov dword [esp + 8], 0
mov dword [esp + 0x18], eax
jmp 0x1d920d0
mov dword [esp + 0x10], 0
mov edx, 1
mov dword [esp + 0x24], 0
mov dword [esp + 8], 0
jmp 0x1d9202a
inc dword [esp]
mov eax, dword [esp + 4]
dec eax
je 0x1d920a7
mov dword [esp + 4], eax
mov eax, dword [esp]
movsx eax, byte [eax]
mov ebx, eax
add al, 0xc6
cmp al, 0xf6
jb 0x1d9209a
mov eax, 0xcccccccc
cmp eax, edx
mov eax, 0xccccccc
sbb eax, dword [esp + 8]
jl 0x1d92020
mov eax, dword [esp + 0x10]
mov dword [esp + 0x20], edx
mov edx, 0xa
mul edx
mov dword [esp + 0x28], edx
mov edx, ebx
add edx, 0xffffffd0
mov ebx, dword [esp + 0x24]
add ebx, ebx
add eax, edx
mov dword [esp + 0x10], eax
lea ebx, [ebx + ebx*4]
adc ebx, dword [esp + 0x28]
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x20]
mov edx, 0xa
mul edx
mov ebx, dword [esp + 8]
lea ebx, [ebx + ebx*4]
lea edx, [edx + ebx*2]
mov dword [esp + 8], edx
mov edx, eax
jmp 0x1d92020
mov eax, dword [esp]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 4]
jmp 0x1d920a9
xor eax, eax
mov ebx, dword [esp + 0x24]
mov dword [esp + 4], eax
test ecx, ecx
jne 0x1d920d0
mov eax, edx
xor eax, 1
or eax, dword [esp + 8]
je 0x1d92582
nop word cs:[eax + eax]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], edx
mov dword [esp], 0x1ebcbc8
mov dword [esp + 0x28], 2
push 0
push 2
push 0x1eb2e2c
mov ebx, dword [esp + 0x10]
push ebx
push dword [esp + 0x28]
call fcn.01d96090
add esp, 0x14
test al, al
jne 0x1d921f0
mov dword [esp], 0x1ebcbd8
push 0
push 2
push 0x1eb2e2f
push ebx
push dword [esp + 0x28]
call fcn.01d96090
add esp, 0x14
test al, al
jne 0x1d921f0
mov dword [esp], 0x1ebcbe8
push 0
push 2
push 0x1eb2e32
push ebx
push dword [esp + 0x28]
call fcn.01d96090
add esp, 0x14
test al, al
jne 0x1d921f0
mov dword [esp], 0x1ebcbf8
mov dword [esp + 0x28], 1
push 0
push 1
push 0x1eb1ce4
push dword [esp + 0x10]
mov ebx, dword [esp + 0x28]
push ebx
call fcn.01d96090
add esp, 0x14
test al, al
jne 0x1d921f0
mov dword [esp], 0x1ebcc08
push 0
push 1
push 0x1eb1ce8
push dword [esp + 0x10]
push ebx
call fcn.01d96090
add esp, 0x14
test al, al
jne 0x1d921f0
mov dword [esp], 0x1ebcc18
push 0
push 1
push 0x1eb1ce2
push dword [esp + 0x10]
push ebx
call fcn.01d96090
add esp, 0x14
test al, al
jne 0x1d921f0
mov dword [esp], 0x1ebcc28
push 0
push 1
push 0x1eb1cea
push dword [esp + 0x10]
push ebx
call fcn.01d96090
add esp, 0x14
test al, al
je 0x1d92582
nop word [eax + eax]
mov eax, dword [esp + 0x28]
sub dword [esp + 4], eax
jb 0x1d925c4
mov eax, dword [esp]
mov ecx, dword [eax + 8]
mov ebx, dword [eax + 0xc]
mov eax, esi
or eax, edi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x54], ebx
je 0x1d92375
mov ecx, dword [esp + 0x2c]
sar ecx, 0x1f
mov eax, esi
mul dword [esp + 0x2c]
mov dword [esp], eax
imul ecx, esi
imul edi, dword [esp + 0x2c]
add edi, edx
add edi, ecx
mov ecx, ebx
sar ecx, 0x1f
mov esi, ebx
xor esi, ecx
mov eax, dword [esp + 0x3c]
xor eax, ecx
sub eax, ecx
sbb esi, ecx
mov edx, edi
sar edx, 0x1f
mov ecx, ebx
mov ebx, dword [esp]
xor ecx, edi
xor edi, edx
xor ebx, edx
sub ebx, edx
sbb edi, edx
mov dword [esp + 0x34], eax
mul ebx
mov dword [esp + 0x50], eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x38], ecx
mov eax, ecx
shr eax, 0x1f
cmp eax, ebx
mov ecx, 0
sbb ecx, edi
jae 0x1d922d6
mov ecx, 0xffffffff
add ecx, 1
mov edx, SysReAllocString
adc edx, 0
cmp dword [esp + 0x38], 0
mov dword [esp + 0x48], esi
mov esi, 0xffffffff
cmovns ecx, esi
mov esi, dword [esp + 0x48]
mov dword [esp + 0xc], ecx
mov ecx, SysReAllocString
cmovns edx, ecx
mov dword [esp], edx
mov ecx, 0xffffffff
add eax, ecx
mov ecx, SysReAllocString
adc ecx, 0
push edi
push ebx
push ecx
push eax
call fcn.01e7f2e0
cmp eax, dword [esp + 0x34]
sbb edx, esi
mov edx, dword [esp + 0xc]
jb 0x1d92305
mov eax, dword [esp + 0x34]
imul eax, edi
mov ecx, dword [esp + 0x4c]
add ecx, eax
imul esi, ebx
add esi, ecx
mov eax, dword [esp + 0x50]
mov edx, eax
neg edx
mov ecx, 0
sbb ecx, esi
cmp dword [esp + 0x38], 0
cmovns ecx, esi
mov dword [esp], ecx
cmovns edx, eax
mov eax, 0xffffffff
add eax, edx
mov ecx, SysReAllocString
mov edi, dword [esp]
adc ecx, edi
add eax, 2
adc ecx, 0
cmp eax, 2
sbb ecx, 0
mov esi, dword [ebp + 8]
mov ebx, dword [esp + 4]
jae 0x1d9238d
mov dword [esp + 0xc], edx
mov eax, 0xffffffff
add eax, dword [esp + 0x14]
mov ecx, SysReAllocString
mov edi, dword [esp + 0x1c]
adc ecx, edi
add eax, 2
adc ecx, 0
mov edx, 1
cmp edx, eax
mov eax, 0
sbb eax, ecx
jb 0x1d923bf
mov eax, dword [esp + 0x14]
xor eax, dword [esp + 0xc]
xor edi, dword [esp]
or edi, eax
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
je 0x1d923c7
jmp 0x1d925e2
mov eax, dword [esp + 0x14]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
mov esi, dword [ebp + 8]
mov ebx, dword [esp + 4]
jmp 0x1d923bf
mov eax, edi
mov ecx, dword [esp + 0x14]
add ecx, edx
mov edx, dword [esp + 0x1c]
adc edx, edi
seto byte [esp]
mov edi, edx
sar edi, 0x1f
lea eax, [edi - 0x80000000]
cmp byte [esp], 0
cmove edi, ecx
mov dword [esp + 0xc], edi
cmp byte [esp], 0
cmove eax, edx
mov dword [esp], eax
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
mov eax, edi
mov edx, dword [esp + 0x24]
or eax, edx
je 0x1d92523
movd xmm0, edi
movd xmm1, edx
movd xmm2, ecx
punpckldq xmm0, xmm1
movq qword [esp + 0x88], xmm0
fild qword [esp + 0x88]
fstp qword [esp + 0x80]
movsd xmm0, qword [esp + 0x80]
mulsd xmm0, qword [esp + 0x58]
movd xmm1, dword [esp + 8]
punpckldq xmm2, xmm1
movq qword [esp + 0x78], xmm2
fild qword [esp + 0x78]
fstp qword [esp + 0x70]
divsd xmm0, qword [esp + 0x70]
movss xmm1, dword [esp + 0x3c]
movss xmm2, dword [esp + 0x54]
unpcklps xmm1, xmm2
movlps qword [esp + 0x68], xmm1
fild qword [esp + 0x68]
fstp qword [esp + 0x60]
mulsd xmm0, qword [esp + 0x60]
movsd xmm2, qword [0x1ebcbb8]
ucomisd xmm0, xmm2
mov ecx, 0
mov eax, 0xffffffff
cmovae ecx, eax
mov edi, 0
mov eax, SysReAllocString
cmovae edi, eax
movapd xmm1, xmm0
maxsd xmm1, xmm2
movsd qword [esp + 0x40], xmm1
fld qword [esp + 0x40]
fnstcw word [esp + 0x30]
movzx eax, word [esp + 0x30]
or eax, 0xc00
mov word [esp + 0x32], ax
fldcw word [esp + 0x32]
fistp qword [esp + 0x40]
fldcw word [esp + 0x30]
movsd xmm1, qword [0x1ebcbc0]
ucomisd xmm1, xmm0
jb 0x1d924b8
mov edi, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
mov eax, 0xffffffff
add eax, ecx
mov edx, ecx
mov ecx, SysReAllocString
adc ecx, edi
add eax, 2
adc ecx, 0
cmp eax, 2
sbb ecx, 0
jae 0x1d9252c
mov eax, 0xffffffff
mov dword [esp + 0x14], edx
mov edx, dword [esp + 0xc]
add eax, edx
mov ecx, SysReAllocString
mov esi, dword [esp]
adc ecx, esi
add eax, 2
adc ecx, 0
xor edx, dword [esp + 0x14]
mov dword [esp + 0x1c], edi
xor esi, edi
or esi, edx
je 0x1d92559
mov edx, 1
cmp edx, eax
mov eax, 0
sbb eax, ecx
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov esi, dword [ebp + 8]
jb 0x1d92570
jmp 0x1d925e5
mov ecx, dword [esp + 0xc]
mov edx, dword [esp]
jmp 0x1d92570
add dword [esp + 0xc], edx
mov eax, dword [esp]
adc eax, edi
seto byte [esp + 4]
mov ecx, eax
sar ecx, 0x1f
lea edx, [ecx - 0x80000000]
cmp byte [esp + 4], 0
cmove ecx, dword [esp + 0xc]
cmp byte [esp + 4], 0
cmove edx, eax
jmp 0x1d92570
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x1c]
mov esi, dword [ebp + 8]
nop word cs:[eax + eax]
mov edi, dword [esp + 0x18]
add edi, dword [esp + 0x28]
test ebx, ebx
jne 0x1d91eda
jmp 0x1d925b0
mov esi, dword [ebp + 8]
mov byte [esi], 0
xor eax, eax
jmp 0x1d925b7
xor eax, eax
mov ecx, 0xffffffff
add ecx, 1
adc eax, 0x7fffffff
mov edx, 0xffffffff
cmp byte [esp + 4], 0
cmove ecx, edx
mov edx, SysReAllocString
cmovne edx, eax
mov dword [esi], ecx
mov dword [esi + 4], edx
mov al, 1
mov byte [esi + 8], al
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
push str.remove_prefix___cant_remove_more_than_size__
push 0x1eb1ee3
push 0x1b7
push str....._third_partylibc_srcinclude_string_view
push str._s:_d:_assertion__s_failed:__s_n
call fcn.01ce782c
int3
int3