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

Disassembly:
mov ecx, dword [0x6e06e0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4c63b5
sub esp, 0x4c
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x4c5fa3
xor ecx, ecx
jmp 0x4c5fe1
mov eax, dword [esp + 0x50]
mov dword [esp], eax
mov ecx, dword [esp + 0x54]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x58]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x5c]
mov dword [esp + 0xc], ebx
mov ebp, dword [esp + 0x60]
mov dword [esp + 0x10], ebp
mov esi, dword [esp + 0x64]
mov dword [esp + 0x14], esi
call sym.bytes.Count
mov eax, dword [esp + 0x18]
mov ecx, eax
mov eax, dword [esp + 0x74]
test ecx, ecx
je 0x4c6051
test eax, eax
jl 0x4c5fef
cmp eax, ecx
jg 0x4c5fef
mov ecx, eax
mov dword [esp + 0x38], ecx
lea eax, [0x559b20]
mov dword [esp], eax
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x60]
sub eax, edx
imul eax, ecx
mov ebp, dword [esp + 0x54]
add eax, ebp
mov dword [esp + 0x24], eax
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call sym.runtime.makeslice
mov eax, dword [esp + 0xc]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x50]
xor edi, edi
xor edi, edi
mov dword [esp + 0x20], edi
xor edi, edi
mov dword [esp + 0x28], edi
xor edi, edi
jmp 0x4c6101
mov eax, dword [esp + 0x54]
test eax, eax
ja 0x4c6061
xor ecx, ecx
xor edx, edx
xor ebx, ebx
jmp 0x4c609b
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], eax
lea ecx, [0x559b20]
mov dword [esp + 0x10], ecx
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, ecx
mov ecx, eax
mov eax, dword [esp + 0x54]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x34], ebx
mov dword [esp], ecx
mov ebp, dword [esp + 0x50]
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call sym.runtime.memmove
mov eax, dword [esp + 0x44]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x80], eax
add esp, 0x4c
ret
mov ebp, dword [esp + 0x30]
inc ebp
add ebx, esi
mov esi, dword [esp + 0x2c]
add esi, edx
mov ecx, dword [esp + 0x58]
mov edi, ebp
mov dword [esp + 0x20], ebx
mov dword [esp + 0x28], esi
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x50]
cmp edi, ebp
jge 0x4c62e2
mov dword [esp + 0x30], edi
test edx, edx
jne 0x4c6185
test edi, edi
jg 0x4c612a
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x3c]
jmp 0x4c61f8
mov ebp, dword [esp + 0x54]
mov edx, dword [esp + 0x28]
cmp ebp, edx
jb 0x4c63ab
sub ecx, edx
sub ebp, edx
mov edi, ecx
neg ecx
sar ecx, 0x1f
and ecx, edx
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
call sym.unicode_utf8.DecodeRune
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x28]
add eax, ecx
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x48]
jmp 0x4c61f8
mov ebp, dword [esp + 0x54]
mov edi, dword [esp + 0x28]
cmp ebp, edi
jb 0x4c63a2
sub ecx, edi
mov dword [esp + 0x34], ecx
sub ebp, edi
neg ecx
sar ecx, 0x1f
and ecx, edi
add ecx, esi
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov ecx, dword [esp + 0x34]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x14], ebp
call sym.bytes.Index
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
add eax, ecx
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x50]
mov edi, dword [esp + 0x30]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x48]
mov ebp, dword [esp + 0x20]
cmp ebp, ebx
ja 0x4c6399
sub ebx, ebp
mov dword [esp + 0x34], ebx
neg ebx
sar ebx, 0x1f
and ebx, ebp
add ebx, eax
mov edi, dword [esp + 0x2c]
cmp ecx, edi
jb 0x4c6390
mov ebp, dword [esp + 0x28]
cmp ebp, edi
ja 0x4c6387
sub edi, ebp
sub ecx, ebp
neg ecx
sar ecx, 0x1f
and ebp, ecx
add ebp, esi
mov ecx, esi
mov esi, dword [esp + 0x34]
cmp edi, esi
jl 0x4c6244
mov edi, esi
cmp ebp, ebx
je 0x4c626c
mov dword [esp + 0x34], edi
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edi
call sym.runtime.memmove
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x60]
mov edi, dword [esp + 0x34]
mov ebx, dword [esp + 0x20]
add ebx, edi
mov ebp, dword [esp + 0x24]
cmp ebx, ebp
ja 0x4c637e
sub ebp, ebx
mov edi, ebp
xchg ebp, ebx
neg ebx
xchg ebp, ebx
sar ebp, 0x1f
and ebp, ebx
add ebp, eax
mov esi, dword [esp + 0x6c]
cmp esi, edi
jge 0x4c629b
mov edi, esi
jmp 0x4c62a1
mov esi, edi
mov edi, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
cmp edi, ebp
je 0x4c60da
mov dword [esp + 0x20], ebx
mov dword [esp + 0x34], esi
mov dword [esp], ebp
mov dword [esp + 4], edi
mov dword [esp + 8], esi
call sym.runtime.memmove
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x60]
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x68]
jmp 0x4c60da
mov ebp, dword [esp + 0x20]
cmp ebp, ebx
ja 0x4c6375
mov edx, ebx
sub ebx, ebp
mov edi, ebx
neg ebx
sar ebx, 0x1f
and ebx, ebp
add ebx, eax
mov dword [esp + 0x44], ebx
mov ebp, dword [esp + 0x54]
mov ebx, dword [esp + 0x28]
cmp ebp, ebx
jb 0x4c636c
sub ebp, ebx
sub ecx, ebx
neg ecx
sar ecx, 0x1f
and ebx, ecx
add ebx, esi
cmp ebp, edi
jl 0x4c6320
mov ebp, edi
mov esi, dword [esp + 0x44]
cmp ebx, esi
je 0x4c6348
mov dword [esp + 0x38], ebp
mov dword [esp], esi
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
call sym.runtime.memmove
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x24]
mov ebp, dword [esp + 0x38]
mov ebx, dword [esp + 0x20]
lea ecx, [ebp + ebx]
cmp ecx, edx
ja 0x4c6367
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x80], edx
add esp, 0x4c
ret
call sym.runtime.panicSliceAcap
mov eax, ebx
mov ecx, ebp
call sym.runtime.panicSliceB
mov eax, ebp
mov ecx, ebx
call sym.runtime.panicSliceB
mov eax, ebx
mov ecx, ebp
call sym.runtime.panicSliceB
mov eax, ebp
mov ecx, edi
call sym.runtime.panicSliceB
mov edx, ecx
mov ecx, edi
call sym.runtime.panicSliceAcap
mov eax, ebp
mov ecx, ebx
call sym.runtime.panicSliceB
mov eax, edi
mov ecx, ebp
call sym.runtime.panicSliceB
mov eax, edx
mov ecx, ebp
call sym.runtime.panicSliceB
nop
call sym.runtime.morestack_noctxt
jmp sym.bytes.Replace