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

Disassembly:
mov ecx, dword [0x84d0e8]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x5318d9
sub esp, 0x84
lea edi, [esp + 0x70]
lea esi, [esp + 0x88]
call fcn.0046c53e
mov ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
shl edx, 8
shr ecx, 0x18
or ecx, edx
mov dword [esp + 0x30], ecx
cmp cl, 0x64
jb 0x531189
movzx edx, cl
imul edx, edx, 0x148
shr edx, 0xf
movzx eax, dl
cmp eax, 0x10
jae 0x5318ce
mov edx, dword [esp + 0xa0]
inc edx
lea ebx, [0x655168]
movzx ebp, byte [ebx + eax]
mov ebx, dword [esp + 0xa4]
cmp ebx, edx
jb 0x531139
mov eax, dword [esp + 0x9c]
jmp 0x53117f
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov eax, dword [esp + 0x9c]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
movzx ebp, byte [esp + 0x23]
mov ebx, ecx
mov ecx, dword [esp + 0x30]
xchg ebp, ebx
mov byte [edx + eax - 1], bl
xchg ebp, ebx
jmp 0x53119e
mov ebx, dword [esp + 0xa4]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0xa0]
cmp cl, 0xa
jb 0x531236
movzx ebp, cl
imul ebp, ebp, 0x19a
shr ebp, 0xc
xchg ebp, eax
movzx esi, al
xchg ebp, eax
imul esi, esi, 0x19a
shr esi, 0xc
lea esi, [esi + esi*4]
shl esi, 1
sub ebp, esi
xchg ebp, eax
movzx eax, al
xchg ebp, eax
cmp ebp, 0x10
jae 0x5318c2
inc edx
mov esi, edx
lea edx, [0x655168]
movzx ebp, byte [edx + ebp]
cmp ebx, esi
jae 0x53122c
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
movzx ebp, byte [esp + 0x23]
mov esi, edx
lea edx, [0x655168]
xchg ebp, ebx
mov byte [esi + eax - 1], bl
xchg ebp, ebx
jmp 0x53123e
mov esi, edx
lea edx, [0x655168]
movzx ebp, cl
imul ebp, ebp, 0x19a
shr ebp, 0xc
lea ebp, [ebp + ebp*4]
shl ebp, 1
sub ecx, ebp
movzx ebp, cl
cmp ebp, 0x10
jae 0x5318b6
lea ecx, [esi + 1]
movzx ebp, byte [edx + ebp]
cmp ebx, ecx
jae 0x5312a8
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
lea edx, [0x655168]
movzx ebp, byte [esp + 0x23]
xchg ebp, ebx
mov byte [ecx + eax - 1], bl
xchg ebp, ebx
inc ecx
cmp ebx, ecx
jae 0x5312e9
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
lea edx, [0x655168]
mov dword [esp + 0x2c], ecx
mov byte [ecx + eax - 1], 0x2e
lea edi, [esp + 0x5c]
lea esi, [esp + 0x88]
call fcn.0046c53e
mov ecx, dword [esp + 0x64]
mov ebp, dword [esp + 0x68]
shl ebp, 0x10
shr ecx, 0x10
or ecx, ebp
mov dword [esp + 0x30], ecx
cmp cl, 0x64
jb 0x531393
movzx ebp, cl
imul ebp, ebp, 0x148
shr ebp, 0xf
xchg ebp, eax
movzx eax, al
xchg ebp, eax
cmp ebp, 0x10
jae 0x5318aa
mov esi, ebx
mov ebx, dword [esp + 0x2c]
inc ebx
movzx ebp, byte [edx + ebp]
cmp esi, ebx
jae 0x531389
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
lea edx, [0x655168]
movzx ebp, byte [esp + 0x23]
mov esi, ecx
mov ecx, dword [esp + 0x30]
xchg ebp, ecx
mov byte [ebx + eax - 1], cl
xchg ebp, ecx
jmp 0x531399
mov esi, ebx
mov ebx, dword [esp + 0x2c]
cmp cl, 0xa
jb 0x531425
movzx ebp, cl
imul ebp, ebp, 0x19a
shr ebp, 0xc
xchg ebp, eax
movzx edi, al
xchg ebp, eax
imul edi, edi, 0x19a
shr edi, 0xc
lea edi, [edi + edi*4]
shl edi, 1
sub ebp, edi
xchg ebp, eax
movzx eax, al
xchg ebp, eax
cmp ebp, 0x10
jae 0x53189e
inc ebx
movzx ebp, byte [edx + ebp]
cmp esi, ebx
jae 0x53141d
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
lea edx, [0x655168]
movzx ebp, byte [esp + 0x23]
xchg ebp, ecx
mov byte [ebx + eax - 1], cl
xchg ebp, ecx
movzx ebp, cl
imul ebp, ebp, 0x19a
shr ebp, 0xc
lea ebp, [ebp + ebp*4]
shl ebp, 1
sub ecx, ebp
movzx ebp, cl
cmp ebp, 0x10
jae 0x531892
lea ecx, [ebx + 1]
movzx ebx, byte [edx + ebp]
cmp esi, ecx
jae 0x53148d
mov byte [esp + 0x23], bl
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [0x655168]
movzx ebx, byte [esp + 0x23]
mov byte [ecx + eax - 1], bl
inc ecx
cmp esi, ecx
jae 0x5314ca
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
lea edx, [0x655168]
mov dword [esp + 0x28], ecx
mov byte [ecx + eax - 1], 0x2e
lea edi, [esp + 0x48]
mov ebx, esi
lea esi, [esp + 0x88]
call fcn.0046c53e
mov ecx, dword [esp + 0x50]
mov ebp, dword [esp + 0x54]
shr ecx, 8
shl ebp, 0x18
or ebp, ecx
mov dword [esp + 0x30], ebp
xchg ebp, eax
cmp al, 0x64
xchg ebp, eax
jb 0x531572
xchg ebp, eax
movzx ecx, al
xchg ebp, eax
imul ecx, ecx, 0x148
shr ecx, 0xf
movzx ecx, cl
cmp ecx, 0x10
jae 0x531886
mov esi, ebp
mov ebp, dword [esp + 0x28]
inc ebp
movzx ecx, byte [edx + ecx]
cmp ebx, ebp
jae 0x53156c
mov byte [esp + 0x23], cl
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov esi, dword [esp + 0x1c]
movzx ecx, byte [esp + 0x23]
lea edx, [0x655168]
mov ebx, esi
mov esi, dword [esp + 0x30]
mov byte [ebp + eax - 1], cl
jmp 0x531578
mov esi, ebp
mov ebp, dword [esp + 0x28]
xchg esi, eax
cmp al, 0xa
xchg esi, eax
jb 0x5315fa
xchg esi, eax
movzx ecx, al
xchg esi, eax
imul ecx, ecx, 0x19a
shr ecx, 0xc
movzx edi, cl
imul edi, edi, 0x19a
shr edi, 0xc
lea edi, [edi + edi*4]
shl edi, 1
sub ecx, edi
movzx ecx, cl
cmp ecx, 0x10
jae 0x53187a
inc ebp
movzx ecx, byte [edx + ecx]
cmp ebx, ebp
jae 0x5315f6
mov byte [esp + 0x23], cl
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
movzx ecx, byte [esp + 0x23]
lea edx, [0x655168]
mov esi, dword [esp + 0x30]
mov byte [ebp + eax - 1], cl
xchg esi, eax
movzx ecx, al
xchg esi, eax
imul ecx, ecx, 0x19a
shr ecx, 0xc
lea ecx, [ecx + ecx*4]
shl ecx, 1
sub esi, ecx
xchg esi, eax
movzx ecx, al
xchg esi, eax
cmp ecx, 0x10
jae 0x53186e
inc ebp
movzx ecx, byte [edx + ecx]
cmp ebx, ebp
jae 0x531663
mov byte [esp + 0x23], cl
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
movzx ecx, byte [esp + 0x23]
lea edx, [0x655168]
mov byte [ebp + eax - 1], cl
lea ecx, [ebp + 1]
cmp ebx, ecx
jae 0x5316a2
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
lea edx, [0x655168]
mov dword [esp + 0x24], ecx
mov byte [ecx + eax - 1], 0x2e
lea edi, [esp + 0x34]
lea esi, [esp + 0x88]
call fcn.0046c53e
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x30], ecx
cmp cl, 0x64
jb 0x53173c
movzx ebp, cl
imul ebp, ebp, 0x148
shr ebp, 0xf
xchg ebp, eax
movzx eax, al
xchg ebp, eax
cmp ebp, 0x10
jae 0x531862
mov esi, dword [esp + 0x24]
inc esi
movzx ebp, byte [edx + ebp]
cmp ebx, esi
jae 0x531732
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
lea edx, [0x655168]
movzx ebp, byte [esp + 0x23]
xchg ebp, ebx
mov byte [esi + eax - 1], bl
xchg ebp, ebx
jmp 0x531740
mov esi, dword [esp + 0x24]
cmp cl, 0xa
jb 0x5317cc
movzx ebp, cl
imul ebp, ebp, 0x19a
shr ebp, 0xc
xchg ebp, eax
movzx edi, al
xchg ebp, eax
imul edi, edi, 0x19a
shr edi, 0xc
lea edi, [edi + edi*4]
shl edi, 1
sub ebp, edi
xchg ebp, eax
movzx eax, al
xchg ebp, eax
cmp ebp, 0x10
jae 0x531856
inc esi
movzx ebp, byte [edx + ebp]
cmp ebx, esi
jae 0x5317c4
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp], eax
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
lea edx, [0x655168]
movzx ebp, byte [esp + 0x23]
xchg ebp, ebx
mov byte [esi + eax - 1], bl
xchg ebp, ebx
movzx ebp, cl
imul ebp, ebp, 0x19a
shr ebp, 0xc
lea ebp, [ebp + ebp*4]
shl ebp, 1
sub ecx, ebp
movzx ebp, cl
cmp ebp, 0x10
jae 0x53184a
lea ecx, [esi + 1]
movzx edx, byte [edx + ebp]
cmp ebx, ecx
jae 0x53182a
mov byte [esp + 0x23], dl
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x619aa0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
movzx edx, byte [esp + 0x23]
mov byte [ecx + eax - 1], dl
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], ecx
mov dword [esp + 0xb0], ebx
add esp, 0x84
ret
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ecx
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov eax, ebp
mov ecx, 0x10
call sym.runtime.panicIndex
mov ecx, 0x10
call sym.runtime.panicIndex
nop
call sym.runtime.morestack_noctxt
jmp sym.net_netip.Addr.appendTo4