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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x38
mov esi, dword [ecx]
test esi, esi
je 0x1001f499
mov edx, dword [ecx + 4]
mov eax, dword [ecx + 8]
mov dword [ebp - 0x10], ecx
lea edi, [esi - 1]
mov ebx, 1
mov dword [ebp - 0x28], esi
cmp eax, edx
mov ecx, edx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x24], edx
cmova ecx, eax
sub eax, ecx
xor ecx, ecx
mov dword [ebp - 0x44], eax
nop dword [eax + eax]
mov edx, dword [ebp - 0x44]
add edx, ecx
je 0x1001f52b
mov eax, dword [ebp - 0x2c]
mov dword [ebp - 0x20], ebx
mov ebx, edi
mov edi, dword [ebp - 0x10]
movzx edx, byte [esi + eax]
lea eax, [eax + ecx + 1]
mov dword [edi + 8], eax
mov edi, ebx
mov ebx, dword [ebp - 0x20]
mov eax, edx
mov ah, dl
add al, 0xd0
cmp al, 0xa
setb al
add ah, 0x9f
cmp ah, 6
setb ah
inc edi
dec ebx
inc esi
inc ecx
or ah, al
test ah, ah
jne 0x1001f420
cmp dl, 0x5f
jne 0x1001f52b
mov eax, dword [ebp - 0x2c]
mov ecx, eax
sub ecx, ebx
test eax, eax
je 0x1001f4b9
mov edx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x28]
cmp eax, edx
jae 0x1001f561
cmp ecx, edx
ja 0x1001f569
cmp byte [esi + eax], 0xc0
jge 0x1001f4c7
jmp 0x1001f569
mov eax, dword [ecx + 0x10]
test eax, eax
je 0x1001f555
push 1
push 0x100ee8b1
push eax
call sym.core::fmt::Formatter::pad::h1cc0cb80d9b3d9c0
add esp, 0x44
jmp 0x1001f55c
mov edx, dword [ebp - 0x24]
mov esi, dword [ebp - 0x28]
cmp ecx, edx
ja 0x1001f569
neg ebx
test bl, 1
jne 0x1001f52b
add esi, eax
add edi, eax
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 2
nop dword [eax]
lea ecx, [ebp - 0x40]
call sym.__ZN104__LT_core..iter..sources..from_fn..FromFn_LT_F_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next17h2f02a3a
cmp eax, 0x110000
jb 0x1001f4f0
cmp eax, 0x110001
jne 0x1001f52b
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0x20], edi
mov edi, esi
mov esi, dword [eax + 0x10]
test esi, esi
je 0x1001f555
mov eax, dword [esi + 0x18]
push 0x22
push dword [esi + 0x14]
call dword [eax + 0x10]
add esp, 8
test al, al
je 0x1001f577
mov bl, 1
jmp 0x1001f557
mov esi, dword [ebp - 0x10]
mov eax, dword [esi + 0x10]
test eax, eax
je 0x1001f54b
mov bl, 1
push 0x10
push str.invalid_syntaxrecursion_limit_reached_for_______::closureshim:_as__mut_const___dyn___unsafe_extern___
push eax
call sym.core::fmt::Formatter::pad::h1cc0cb80d9b3d9c0
add esp, 0xc
test al, al
jne 0x1001f557
mov dword [esi], 0
mov byte [esi + 4], 0
xor ebx, ebx
mov eax, ebx
add esp, 0x38
pop esi
pop edi
pop ebx
pop ebp
ret
cmp ecx, edx
jbe 0x1001f4c7
push 0x100ee838
push ecx
push eax
push edx
push esi
call sym.core::str::slice_error_fail::h3ba52b33a833cd0d
mov eax, dword [ebp - 0x20]
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 2
call sym.__ZN104__LT_core..iter..sources..from_fn..FromFn_LT_F_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next17h2f02a3a
cmp eax, 0x110001
mov bl, 1
jne 0x1001f5b2
mov eax, dword [esi + 0x18]
push 0x22
push dword [esi + 0x14]
call dword [eax + 0x10]
add esp, 0x40
jmp 0x1001f55c
lea edi, [ebp - 0x1c]
cmp eax, 0x110000
je 0x1001f687
cmp eax, 0x27
jne 0x1001f5e0
mov eax, dword [esi + 0x18]
push 0x27
push dword [esi + 0x14]
call dword [eax + 0x10]
add esp, 8
test al, al
je 0x1001f66f
jmp 0x1001f557
mov ecx, edi
mov edx, eax
call sym.core::char::methods::__LT_impl_u20_char_GT_::escape_debug_ext::h5a3fb46313649b07
xor eax, eax
cmp al, byte [ebp - 0x1c]
jno 0x1001f63a
mov bl, pe_nt_image_headers32
jmp 0x1001f61d
mov eax, dword [ebp - 0x18]
xorps xmm0, xmm0
xor ebx, ebx
mov dword [ebp - 0x14], 0
movsd qword [ebp - 0x1c], xmm0
mov ecx, dword [esi + 0x18]
push eax
push dword [esi + 0x14]
call dword [ecx + 0x10]
add esp, 8
test al, al
jne 0x1001f527
mov eax, ebx
neg al
jo 0x1001f5f4
movzx eax, byte [ebp - 0x12]
cmp al, byte [ebp - 0x11]
jae 0x1001f66a
mov ecx, eax
inc cl
mov byte [ebp - 0x12], cl
movzx eax, byte [ebp + eax - 0x1c]
jmp 0x1001f608
movzx eax, byte [ebp - 0x11]
movzx ebx, byte [ebp - 0x12]
cmp bl, al
cmova eax, ebx
movzx edi, al
cmp edi, ebx
je 0x1001f66a
movzx eax, byte [ebp + ebx - 0x1c]
mov ecx, dword [esi + 0x18]
inc ebx
push eax
push dword [esi + 0x14]
call dword [ecx + 0x10]
add esp, 8
test al, al
je 0x1001f64a
jmp 0x1001f527
mov bl, 1
lea edi, [ebp - 0x1c]
lea ecx, [ebp - 0x40]
call sym.__ZN104__LT_core..iter..sources..from_fn..FromFn_LT_F_GT__u20_as_u20_core..iter..traits..iterator..Iterator_GT_4next17h2f02a3a
cmp eax, 0x110001
jne 0x1001f5b5
jmp 0x1001f5a2
push 0x100ee304
push 0x100ee400
push edi
push 0x2b
push 0x100ee3d4
call sym.core::result::unwrap_failed::h534a40e08cfe968a
nop