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

Disassembly:
mov ecx, dword [0x5fdb74]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x49b85a
sub esp, 0x6c
mov eax, dword [esp + 0x70]
mov dword [esp], eax
mov ecx, dword [esp + 0x74]
mov dword [esp + 4], ecx
call sym.path_filepath.Base
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x74]
cmp ecx, eax
je 0x49b42d
mov eax, dword [esp + 0x70]
jmp 0x49b48e
mov ecx, dword [esp + 8]
mov dword [esp], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
test al, al
jne 0x49b458
mov ecx, dword [esp + 0x74]
mov eax, dword [esp + 0x70]
jmp 0x49b48e
mov dword [esp], 0
lea eax, [0x4b7bde]
mov dword [esp + 4], eax
mov dword [esp + 8], 2
mov eax, dword [esp + 0x70]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x10], eax
call sym.runtime.concatstring2
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x50], eax
mov dword [esp + 0x2c], ecx
call sym.os_exec.pathExt
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x2c]
lea edx, [ecx - 1]
mov ebx, dword [esp + 0x50]
jmp 0x49b4ad
dec edx
test edx, edx
jl 0x49b4e8
cmp edx, ecx
jae 0x49b852
movzx ebp, byte [ebx + edx]
xchg ebp, eax
cmp al, 0x5c
xchg ebp, eax
je 0x49b4e8
xchg ebp, eax
cmp al, 0x2f
xchg ebp, eax
je 0x49b4e8
xchg ebp, eax
cmp al, 0x2e
xchg ebp, eax
jne 0x49b4ac
mov ebp, ecx
sub ecx, edx
mov esi, ecx
neg ecx
sar ecx, 0x1f
and edx, ecx
lea ecx, [ebx + edx]
mov edx, ecx
mov ecx, ebp
jmp 0x49b4ec
xor esi, esi
xor edx, edx
mov dword [esp + 0x38], eax
mov ebp, dword [esp]
mov dword [esp + 0x58], ebp
mov edi, dword [esp + 4]
mov dword [esp + 0x34], edi
test esi, esi
je 0x49b51a
mov dword [esp + 0x4c], edx
mov dword [esp + 0x28], esi
mov dword [esp + 0x3c], eax
xor eax, eax
mov dword [esp + 0x44], eax
jmp 0x49b7eb
mov edx, dword [esp + 0x7c]
test edx, edx
je 0x49b77d
mov dword [esp], ebx
mov dword [esp + 4], ecx
call sym.path_filepath.VolumeName
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x49b721
mov eax, dword [esp + 0x2c]
cmp eax, 1
jle 0x49b5ac
mov ecx, dword [esp + 0x50]
movzx edx, byte [ecx]
cmp dl, 0x5c
je 0x49b558
cmp dl, 0x2f
jne 0x49b5b0
mov dword [esp], ecx
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
call sym.os_exec.lookPath
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], ebx
add esp, 0x6c
ret
mov ecx, dword [esp + 0x50]
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x60], edx
mov edx, dword [esp + 0x78]
mov dword [esp + 0x5c], edx
mov dword [esp + 0x68], eax
mov dword [esp + 0x64], ecx
lea edx, [esp + 0x5c]
mov dword [esp], edx
mov dword [esp + 4], 2
mov dword [esp + 8], 2
call sym.path_filepath.join
mov eax, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x24], ecx
mov dword [esp], eax
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x58]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x10], edx
call sym.os_exec.lookPath
mov eax, dword [esp + 0x1c]
test eax, eax
jne 0x49b6f5
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x14]
nop
mov eax, dword [esp + 0x24]
cmp eax, ecx
jle 0x49b659
xor ebx, ebx
jmp 0x49b688
mov dword [esp + 0x30], ecx
mov dword [esp + 0x54], edx
mov dword [esp], edx
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.runtime.memequal
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x54]
mov ebx, eax
mov eax, dword [esp + 0x24]
test bl, bl
je 0x49b6a1
cmp eax, ecx
ja 0x49b7c5
sub ecx, eax
mov ebx, ecx
neg ebx
sar ebx, 0x1f
and eax, ebx
add edx, eax
mov dword [esp], 0
mov eax, dword [esp + 0x50]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call sym.runtime.concatstring2
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x6c
ret
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], ecx
add esp, 0x6c
ret
mov eax, dword [esp + 0x50]
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x10], eax
call sym.os_exec.lookPath
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], ebx
add esp, 0x6c
ret
mov dword [esp], ebx
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], eax
call sym.os_exec.lookPath
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], edx
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], ebx
add esp, 0x6c
ret
call sym.runtime.panicSliceB
mov eax, dword [esp + 0x44]
inc eax
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x58]
mov esi, dword [esp + 0x28]
mov edi, dword [esp + 0x34]
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x44]
cmp eax, edi
jge 0x49b849
lea ecx, [ebp + eax*8]
mov ebx, dword [ecx]
mov ecx, dword [ecx + 4]
mov dword [esp], edx
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ecx
call sym.strings.EqualFold
movzx eax, byte [esp + 0x10]
test al, al
je 0x49b7ca
mov eax, dword [esp + 0x50]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
add esp, 0x6c
ret
mov eax, dword [esp + 0x38]
jmp 0x49b51a
mov eax, edx
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.os_exec.lookExtensions