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

Disassembly:
mov ecx, dword [0x5852a8]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4763cb
add esp, 0xffffff80
mov ebx, dword [esp + 0x84]
movzx ebp, byte [ebx + 0x3d]
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x475c0e
mov byte [ebx + 0x3c], 1
jmp 0x475c1a
mov byte [esp + 0x88], 0
sub esp, 0xffffff80
ret
mov ecx, dword [ebx + 0x2c]
mov eax, dword [ebx + 0x28]
cmp eax, ecx
jl 0x475c2f
mov ebp, dword [ebx + 0x30]
test ebp, ebp
je 0x475e2b
mov edx, dword [ebx + 0x24]
cmp edx, ecx
jb 0x4763c5
cmp eax, ecx
ja 0x4763c0
mov ebp, dword [ebx + 8]
mov esi, dword [ebp]
mov edi, dword [ebx + 0x1c]
sub edx, eax
mov dword [esp + 0x58], edx
sub ecx, eax
neg edx
sar edx, 0x1f
and eax, edx
add eax, edi
mov edi, dword [ebx + 0x30]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x58]
mov dword [esp + 8], eax
test edi, edi
setne al
mov byte [esp + 0xc], al
mov edx, ebp
call esi
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x5c], ecx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x28], ebx
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x2c], ebp
test eax, eax
jne 0x4761ee
mov esi, dword [esp + 0x10]
mov dword [esp + 0x54], esi
test esi, esi
jge 0x475d46
mov edi, dword [esp + 0x84]
mov eax, dword [edi + 0x30]
mov edx, dword [0x5627fc]
mov esi, dword [0x5627f8]
test eax, eax
je 0x475d1a
cmp dword [0x562868], eax
je 0x475cd5
xor eax, eax
jmp 0x475d16
mov dword [esp + 0x74], edx
mov dword [esp + 0x4c], esi
mov ecx, dword [edi + 0x34]
mov edx, dword [0x56286c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0x84]
test al, al
je 0x475d3b
mov dword [edi + 0x30], esi
mov esi, dword [0x585388]
test esi, esi
je 0x475d38
mov eax, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov esi, dword [eax + 0x34]
mov dword [edi + 4], esi
mov edi, eax
mov dword [edi + 0x34], edx
mov esi, dword [esp + 0x54]
xor eax, eax
jmp 0x475df5
mov edi, dword [esp + 0x84]
mov eax, dword [edi + 0x2c]
mov edx, dword [edi + 0x28]
sub eax, edx
cmp esi, eax
jle 0x475dea
mov eax, dword [edi + 0x30]
mov edx, dword [0x562804]
mov esi, dword [0x562800]
test eax, eax
je 0x475dc1
cmp dword [0x562868], eax
je 0x475d7c
xor eax, eax
jmp 0x475dbd
mov dword [esp + 0x48], esi
mov dword [esp + 0x70], edx
mov ecx, dword [edi + 0x34]
mov edx, dword [0x56286c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x70]
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x2c]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x84]
test al, al
je 0x475de2
mov dword [edi + 0x30], esi
mov esi, dword [0x585388]
test esi, esi
je 0x475ddf
mov eax, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov esi, dword [eax + 0x34]
mov dword [edi + 4], esi
mov edi, eax
mov dword [edi + 0x34], edx
mov esi, dword [esp + 0x54]
xor eax, eax
jmp 0x475df5
lea eax, [esi + edx]
mov dword [edi + 0x28], eax
mov eax, 1
test al, al
je 0x4761e2
mov dword [edi + 0x14], ebx
mov dword [edi + 0x18], ebp
mov ebx, dword [0x585388]
test ebx, ebx
je 0x475e1e
mov eax, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebx, dword [eax + 0x10]
mov dword [edi + 4], ebx
mov edi, eax
mov dword [edi + 0x10], ecx
test ecx, ecx
jne 0x4761b3
mov ebx, edi
mov ebp, dword [ebx + 0x30]
test ebp, ebp
jne 0x476199
mov eax, dword [ebx + 0x28]
test eax, eax
jle 0x475ea6
mov ecx, dword [ebx + 0x2c]
mov ebp, dword [ebx + 0x20]
cmp ebp, ecx
je 0x475e51
mov esi, ebp
shr ebp, 1
cmp eax, ebp
jle 0x475ea6
mov ebp, esi
mov edx, dword [ebx + 0x24]
cmp edx, ecx
jb 0x4763bb
cmp ecx, eax
jb 0x4763b6
mov esi, dword [ebx + 0x1c]
sub ecx, eax
sub edx, eax
neg edx
sar edx, 0x1f
and eax, edx
lea edx, [esi + eax]
cmp ebp, ecx
jg 0x475e7b
mov ecx, ebp
test eax, eax
je 0x475e96
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
mov ebx, dword [esp + 0x84]
mov edx, dword [ebx + 0x2c]
sub edx, dword [ebx + 0x28]
mov dword [ebx + 0x2c], edx
mov dword [ebx + 0x28], 0
mov edx, dword [ebx + 0x20]
cmp dword [ebx + 0x2c], edx
jne 0x475f8d
mov eax, dword [ebx + 0xc]
cmp eax, edx
jle 0x476118
cmp edx, 0x3fffffff
jg 0x476118
shl edx, 1
test edx, edx
jne 0x475ed4
mov edx, 0x1000
cmp edx, eax
jg 0x475eda
mov eax, edx
mov dword [esp + 0x30], eax
lea ecx, [0x4af260]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], eax
call sym.runtime.makeslice
mov eax, dword [esp + 0x84]
mov edx, dword [eax + 0x24]
mov ecx, dword [eax + 0x2c]
cmp edx, ecx
jb 0x4763b1
mov ebx, dword [eax + 0x28]
cmp ecx, ebx
jb 0x4763aa
mov ebp, dword [eax + 0x1c]
sub ecx, ebx
sub edx, ebx
neg edx
sar edx, 0x1f
and ebx, edx
lea edx, [ebp + ebx]
mov ebx, dword [esp + 0x30]
cmp ebx, ecx
jg 0x475f30
mov ecx, ebx
mov ebp, dword [esp + 0xc]
cmp ebp, edx
je 0x475f5b
mov dword [esp + 0x7c], ebp
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.memmove
mov eax, dword [esp + 0x84]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x7c]
mov dword [eax + 0x20], ebx
mov dword [eax + 0x24], ebx
mov edx, dword [0x585388]
test edx, edx
je 0x475f78
call sym.runtime.gcWriteBarrier2
mov dword [edi], ebp
mov edx, dword [eax + 0x1c]
mov dword [edi + 4], edx
mov dword [eax + 0x1c], ebp
mov edx, dword [eax + 0x2c]
sub edx, dword [eax + 0x28]
mov dword [eax + 0x2c], edx
mov dword [eax + 0x28], 0
jmp 0x475f8f
mov eax, ebx
xor ecx, ecx
jmp 0x476309
mov ebp, dword [ebx + 0x30]
mov esi, dword [0x562874]
mov edi, dword [0x562870]
test ebp, ebp
je 0x475ff2
cmp dword [0x562868], ebp
je 0x475fb5
xor eax, eax
jmp 0x475fea
mov dword [esp + 0x60], esi
mov dword [esp + 0x38], edi
mov eax, dword [ebx + 0x34]
mov ecx, dword [0x56286c]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ebx, dword [esp + 0x84]
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x38]
test al, al
je 0x475c1a
mov dword [ebx + 0x30], edi
mov ebp, dword [0x585388]
test ebp, ebp
je 0x47600c
call sym.runtime.gcWriteBarrier2
mov dword [edi], esi
mov ebp, dword [ebx + 0x34]
mov dword [edi + 4], ebp
mov dword [ebx + 0x34], esi
jmp 0x475c1a
mov dword [ebx + 0x38], 0
jmp 0x475c1a
mov esi, dword [ebx + 0x30]
nop
test esi, esi
je 0x476071
cmp dword [0x562868], esi
je 0x476034
xor eax, eax
jmp 0x476069
mov dword [esp + 0x40], ebp
mov dword [esp + 0x68], ecx
mov eax, dword [ebx + 0x34]
mov ecx, dword [0x56286c]
mov dword [esp], esi
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x68]
mov ebx, dword [esp + 0x84]
mov ebp, dword [esp + 0x40]
test al, al
je 0x475c1a
mov dword [ebx + 0x30], ebp
mov ebp, dword [0x585388]
test ebp, ebp
je 0x47608b
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov ebp, dword [ebx + 0x34]
mov dword [edi + 4], ebp
mov dword [ebx + 0x34], ecx
jmp 0x475c1a
mov ebx, dword [esp + 0x84]
mov ebp, dword [ebx + 0x30]
mov esi, dword [0x56280c]
mov edi, dword [0x562808]
test ebp, ebp
je 0x4760f6
cmp dword [0x562868], ebp
je 0x4760b9
xor eax, eax
jmp 0x4760ee
mov dword [esp + 0x64], esi
mov dword [esp + 0x3c], edi
mov eax, dword [ebx + 0x34]
mov ecx, dword [0x56286c]
mov dword [esp], ebp
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ebx, dword [esp + 0x84]
mov esi, dword [esp + 0x64]
mov edi, dword [esp + 0x3c]
test al, al
je 0x475c1a
mov dword [ebx + 0x30], edi
mov ebp, dword [0x585388]
test ebp, ebp
je 0x476110
call sym.runtime.gcWriteBarrier2
mov dword [edi], esi
mov ebp, dword [ebx + 0x34]
mov dword [edi + 4], ebp
mov dword [ebx + 0x34], esi
jmp 0x475c1a
mov eax, dword [ebx + 0x30]
mov ecx, dword [0x5627f4]
mov edx, dword [0x5627f0]
test eax, eax
je 0x476170
cmp dword [0x562868], eax
je 0x476137
xor eax, eax
jmp 0x47616c
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x44], edx
mov ecx, dword [ebx + 0x34]
mov edx, dword [0x56286c]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x6c]
mov edx, dword [esp + 0x44]
mov ebx, dword [esp + 0x84]
test al, al
je 0x47618d
mov dword [ebx + 0x30], edx
mov eax, dword [0x585388]
test eax, eax
je 0x47618a
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [ebx + 0x34]
mov dword [edi + 4], eax
mov dword [ebx + 0x34], ecx
mov byte [esp + 0x88], 0
sub esp, 0xffffff80
ret
mov dword [ebx + 0x28], 0
mov dword [ebx + 0x2c], 0
mov byte [esp + 0x88], 0
sub esp, 0xffffff80
ret
mov eax, dword [edi + 0x30]
test eax, eax
je 0x4761cf
test esi, esi
jg 0x4761cf
mov eax, dword [edi + 0x38]
inc eax
mov dword [edi + 0x38], eax
cmp eax, 0x64
jle 0x4761d6
jmp 0x4762ed
mov dword [edi + 0x38], 0
mov byte [esp + 0x88], 1
sub esp, 0xffffff80
ret
mov byte [esp + 0x88], 0
sub esp, 0xffffff80
ret
mov dword [esp + 0x50], eax
mov edx, dword [esp + 0x24]
mov dword [esp + 0x78], edx
cmp dword [0x562810], eax
jne 0x476276
mov ecx, dword [0x562814]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x47626e
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x84]
mov dword [ecx + 0x14], eax
mov eax, dword [esp + 0x2c]
mov dword [ecx + 0x18], eax
mov eax, dword [0x585388]
test eax, eax
jne 0x476246
mov eax, dword [esp + 0x5c]
jmp 0x476257
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0x5c]
mov dword [edi], eax
mov edx, dword [ecx + 0x10]
mov dword [edi + 4], edx
mov dword [ecx + 0x10], eax
mov byte [ecx + 0x3d], 1
test eax, eax
setne al
mov byte [esp + 0x88], al
sub esp, 0xffffff80
ret
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x84]
mov ebx, dword [ecx + 0x30]
nop
test ebx, ebx
je 0x4762c4
cmp dword [0x562868], ebx
je 0x476291
xor ebx, ebx
jmp 0x4762c0
mov eax, dword [ecx + 0x34]
mov edx, dword [0x56286c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x84]
mov edx, dword [esp + 0x78]
mov ebx, eax
mov eax, dword [esp + 0x50]
test bl, bl
je 0x4762e1
mov dword [ecx + 0x30], eax
mov eax, dword [0x585388]
test eax, eax
je 0x4762de
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov eax, dword [ecx + 0x34]
mov dword [edi + 4], eax
mov dword [ecx + 0x34], edx
mov byte [esp + 0x88], 0
sub esp, 0xffffff80
ret
lea eax, [0x4af1e0]
mov dword [esp], eax
lea eax, [0x4e52b8]
mov dword [esp + 4], eax
call sym.runtime.gopanic
mov eax, ebx
mov ecx, ebp
mov edx, dword [eax + 0x2c]
mov ebx, dword [eax + 0x20]
cmp edx, ebx
ja 0x4763a1
mov dword [esp + 0x34], ecx
mov ecx, dword [eax]
mov ebp, dword [eax + 4]
mov ecx, dword [ecx + 0xc]
mov esi, dword [eax + 0x1c]
mov edi, dword [eax + 0x24]
mov dword [esp], ebp
sub edi, edx
sub ebx, edx
mov ebp, edi
xchg edi, ebx
neg ebx
xchg edi, ebx
sar edi, 0x1f
and edi, edx
lea edx, [edi + esi]
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
call ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
test eax, eax
jl 0x476093
mov ebx, dword [esp + 0x84]
mov ebp, dword [ebx + 0x20]
mov esi, dword [ebx + 0x2c]
sub ebp, esi
cmp eax, ebp
jg 0x47609a
mov ebp, dword [esp + 0x14]
add esi, eax
mov dword [ebx + 0x2c], esi
test ebp, ebp
jne 0x476020
test eax, eax
jg 0x476014
mov ebp, dword [esp + 0x34]
inc ebp
cmp ebp, 0x64
jle 0x476305
jmp 0x475f96
mov eax, edx
mov ecx, ebx
call sym.runtime.panicSliceB
mov eax, ebx
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
call sym.runtime.panicSliceB
call sym.runtime.panicSliceAcap
nop
call sym.runtime.morestack_noctxt
jmp sym.bufio._Scanner_.Scan