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

Disassembly:
mov ecx, dword [0x8c8664]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x48]
cmp eax, dword [ecx + 8]
jbe 0x63fd07
sub esp, 0xc8
mov eax, 0
mov dword [esp + 0xc4], eax
mov byte [esp + 0x23], 0
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov eax, dword [esp + 0xcc]
movzx ecx, byte [eax + 0x6c]
test cl, cl
jne 0x63f39b
mov ecx, dword [eax + 0x74]
test ecx, ecx
jge 0x63f3bc
mov eax, dword [0x881f88]
mov ecx, dword [0x881f8c]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], ecx
add esp, 0xc8
ret
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call sym.net_http._persistConn_.isBroken
movzx eax, byte [esp + 4]
test al, al
jne 0x63f53a
mov eax, dword [esp + 0xd0]
mov dword [esp], eax
call sym.net_http._persistConn_.markReused
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
call sym.sync._Mutex_.Lock
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
lea eax, [sym.net_http._Transport_.tryPutIdleConn.deferwrap1]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0xcc]
mov dword [esp + 0x88], eax
lea ecx, [esp + 0x84]
mov dword [esp + 0xc4], ecx
mov byte [esp + 0x23], 1
mov ecx, dword [esp + 0xd0]
mov edx, dword [ecx]
test edx, edx
jne 0x63f44b
xor edx, edx
jmp 0x63f47f
mov edx, dword [eax + 0x18]
lea ebp, [0x6746c0]
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.runtime.mapaccess1_fast32
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
test eax, eax
setne al
mov ecx, dword [esp + 0xd0]
mov edx, eax
mov eax, dword [esp + 0xcc]
test dl, dl
jne 0x63f50d
lea esi, [ecx + 0xc]
lea edi, [esp + 0x54]
call fcn.0046cd6a
lea edi, [esp + 0xa8]
xor eax, eax
call fcn.0046c899
mov ecx, dword [esp + 0xcc]
mov edx, dword [ecx + 0x10]
lea ebx, [0x674680]
mov dword [esp], ebx
mov dword [esp + 4], edx
lea edx, [esp + 0x54]
mov dword [esp + 8], edx
call sym.runtime.mapaccess2
movzx ecx, byte [esp + 0x10]
mov byte [esp + 0x21], cl
mov esi, dword [esp + 0xc]
lea edi, [esp + 0xa8]
call fcn.0046cd6a
lea edi, [esp + 0x38]
lea esi, [esp + 0xa8]
call fcn.0046cd6a
movzx ecx, byte [esp + 0x21]
test cl, cl
je 0x63f55b
mov edx, dword [esp + 0xd0]
mov ebx, dword [edx]
test ebx, ebx
jne 0x63fc61
jmp 0x63fa97
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0xc4]
mov eax, dword [edx]
call eax
add esp, 0xc8
ret
mov eax, dword [0x881f90]
mov ecx, dword [0x881f94]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], ecx
add esp, 0xc8
ret
mov eax, dword [esp + 0xcc]
movzx ecx, byte [eax + 8]
test cl, cl
jne 0x63f62f
mov ecx, dword [eax + 0xc]
test ecx, ecx
jne 0x63f5a7
call sym.runtime.makemap_small
mov eax, dword [0x8c87a0]
mov ecx, dword [esp]
test eax, eax
jne 0x63f590
mov eax, dword [esp + 0xcc]
jmp 0x63f5a4
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [esp + 0xcc]
mov edx, dword [eax + 0xc]
mov dword [edi + 4], edx
mov dword [eax + 0xc], ecx
mov ecx, dword [eax + 0xc]
lea edx, [0x674640]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x54]
mov dword [esp + 8], ecx
call sym.runtime.mapaccess1
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xcc]
mov edx, dword [ecx + 0x74]
mov ebx, dword [eax + 8]
test edx, edx
jne 0x63f5de
mov edx, 2
mov ebp, dword [eax + 4]
cmp edx, ebp
jle 0x63f5fe
mov dword [esp + 0x28], ebp
mov dword [esp + 0x2c], ebx
mov eax, dword [eax]
mov dword [esp + 0x70], eax
mov edx, dword [esp + 0xd0]
xor esi, esi
jmp 0x63f661
mov eax, dword [0x881fa8]
mov ecx, dword [0x881fac]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], ecx
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0xc4]
mov eax, dword [edx]
call eax
add esp, 0xc8
ret
mov eax, dword [0x881f98]
mov ecx, dword [0x881f9c]
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], ecx
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0xc4]
mov eax, dword [edx]
call eax
add esp, 0xc8
ret
inc esi
cmp esi, ebp
jge 0x63f6f2
lea edi, [eax + esi*4]
cmp dword [edi], edx
jne 0x63f660
mov dword [esp + 0x34], esi
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
lea eax, [0x6a27e0]
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edx
lea ecx, [0x6b6064]
mov dword [esp], ecx
mov dword [esp + 4], 0x1d
lea ebx, [esp + 0xa0]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call sym.log.Fatalf
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xd0]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x34]
jmp 0x63f660
inc ebp
cmp ebx, ebp
jae 0x63f733
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0x6a27e0]
mov dword [esp + 0x10], eax
call sym.runtime.growslice
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov ebx, dword [esp + 0x1c]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0xd0]
mov dword [esp + 0x34], ebx
mov esi, dword [0x8c87a0]
test esi, esi
je 0x63f74f
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov esi, dword [eax + ebp*4 - 4]
mov dword [edi + 4], esi
mov dword [esp + 0x80], eax
mov dword [esp + 0x30], ebp
mov dword [eax + ebp*4 - 4], edx
mov ebx, dword [ecx + 0xc]
lea esi, [0x674640]
mov dword [esp], esi
mov dword [esp + 4], ebx
lea ebx, [esp + 0x54]
mov dword [esp + 8], ebx
call sym.runtime.mapassign
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x34]
mov dword [eax + 8], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x63f7a0
mov ecx, dword [esp + 0x80]
jmp 0x63f7b3
call sym.runtime.gcWriteBarrier2
mov ecx, dword [esp + 0x80]
mov dword [edi], ecx
mov edx, dword [eax]
mov dword [edi + 4], edx
mov dword [eax], ecx
mov eax, dword [esp + 0xcc]
lea ecx, [eax + 0x14]
mov dword [esp], ecx
mov ecx, dword [esp + 0xd0]
mov dword [esp + 4], ecx
call sym.net_http._connLRU_.add
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0x70]
test ecx, ecx
je 0x63f8ff
mov edx, dword [eax + 0x18]
test edx, edx
je 0x63f7ef
mov edx, dword [edx]
jmp 0x63f7f1
xor edx, edx
cmp edx, ecx
jle 0x63f8ff
mov ecx, dword [eax + 0x14]
mov edx, dword [ecx + 0x14]
nop
test edx, edx
jne 0x63f808
xor edx, edx
jmp 0x63f80b
mov edx, dword [ecx + 4]
mov ebx, dword [edx + 0xc]
mov ebp, dword [edx + 0x10]
lea esi, [0x6a27e0]
cmp ebx, esi
jne 0x63fa7a
nop
cmp dword [edx + 8], ecx
jne 0x63f8a4
mov ebx, dword [edx + 4]
test byte [ebx], al
mov esi, dword [0x8c87a0]
nop
mov edi, dword [edx]
test esi, esi
je 0x63f84e
mov esi, edi
call sym.runtime.gcWriteBarrier2
mov dword [edi], esi
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov eax, dword [esp + 0xcc]
mov edi, esi
mov dword [ebx], edi
mov ebx, dword [edx]
test byte [ebx], al
mov esi, dword [0x8c87a0]
mov edi, dword [edx + 4]
test esi, esi
je 0x63f88a
mov esi, edi
call sym.runtime.gcWriteBarrier5
mov dword [edi], esi
mov eax, dword [ebx + 4]
mov dword [edi + 4], eax
mov eax, dword [edx]
mov dword [edi + 8], eax
mov eax, dword [edx + 4]
mov dword [edi + 0xc], eax
mov eax, dword [edx + 8]
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0xcc]
mov edi, esi
mov dword [ebx + 4], edi
mov dword [edx], 0
mov dword [edx + 4], 0
mov dword [edx + 8], 0
dec dword [ecx + 0x14]
mov dword [esp + 0x7c], ebp
mov edx, dword [eax + 0x18]
lea ebx, [0x6746c0]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ebp
call sym.runtime.mapdelete_fast32
mov eax, dword [0x881fa0]
mov ecx, dword [0x881fa4]
mov edx, dword [esp + 0x7c]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.net_http._persistConn_.close
mov eax, dword [esp + 0xcc]
mov dword [esp], eax
mov ecx, dword [esp + 0x7c]
mov dword [esp + 4], ecx
call sym.net_http._Transport_.removeIdleConnLocked
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0x7c]
mov edx, dword [eax + 0x80]
test edx, edx
sete bl
xchg ebp, ebx
setg bl
xchg ebp, ebx
test ecx, ecx
xchg esi, ebx
seta bl
xchg esi, ebx
and ebx, esi
or ebp, ebx
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x63f9ed
mov ebx, dword [esp + 0xd0]
mov ebp, dword [ebx]
test ebp, ebp
jne 0x63f9f4
mov ebp, dword [ebx + 0x78]
test ebp, ebp
je 0x63f95f
mov dword [esp], ebp
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.time._Timer_.Reset
mov eax, dword [esp + 0xd0]
jmp 0x63f9f4
lea eax, [0x67bb20]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [sym.net_http._persistConn_.closeConnIfStillIdle_fm]
mov dword [eax], ecx
mov ecx, dword [0x8c87a0]
test ecx, ecx
jne 0x63f98c
mov ecx, dword [esp + 0xd0]
jmp 0x63f99a
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0xd0]
mov dword [edi], ecx
mov dword [eax + 4], ecx
mov edx, dword [esp + 0xcc]
mov ebx, dword [edx + 0x7c]
mov edx, dword [edx + 0x80]
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call sym.time.AfterFunc
mov eax, dword [0x8c87a0]
mov ecx, dword [esp + 0xc]
test eax, eax
jne 0x63f9d4
mov eax, dword [esp + 0xd0]
jmp 0x63f9e8
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [esp + 0xd0]
mov edx, dword [eax + 0x78]
mov dword [edi + 4], edx
mov dword [eax + 0x78], ecx
jmp 0x63f9f4
mov ebx, dword [esp + 0xd0]
call sym.time.Now
lea edi, [esp + 0x8c]
lea esi, [esp]
call fcn.0046cd7e
mov eax, dword [0x8c87a0]
mov ecx, dword [esp + 0xd0]
lea edi, [ecx + 0x64]
test eax, eax
je 0x63fa41
mov dword [esp + 0x78], edi
lea eax, [0x6aa0a0]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x8c]
mov dword [esp + 8], eax
call sym.runtime.wbMove
mov edi, dword [esp + 0x78]
lea esi, [esp + 0x8c]
call fcn.0046cd7e
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0xc4]
mov eax, dword [edx]
call eax
add esp, 0xc8
ret
mov dword [esp], ebx
mov dword [esp + 4], esi
lea eax, [0x6737e0]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeE
mov edx, dword [esp + 0xd0]
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x44]
mov esi, ebx
sub ebx, ebp
mov edi, dword [esp + 0x4c]
add ebx, edi
test ebx, ebx
jle 0x63fb61
mov dword [esp + 0x24], ebx
cmp ebp, esi
jl 0x63faf5
test edi, edi
jne 0x63fac1
xor esi, esi
jmp 0x63fb2b
mov ebp, dword [esp + 0x38]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], eax
mov dword [esp + 0x38], ecx
mov dword [esp + 0x44], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], esi
mov dword [esp + 0x48], ebp
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x44]
cmp eax, ecx
jae 0x63fc37
mov ecx, dword [esp + 0x38]
mov ebp, dword [0x8c87a0]
mov esi, dword [ecx + eax*4]
test ebp, ebp
je 0x63fb20
mov ebp, dword [ecx + eax*4]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebp
mov dword [ecx + eax*4], 0
inc dword [esp + 0x44]
mov dword [esp], esi
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call sym.net_http._wantConn_.tryDeliver
movzx eax, byte [esp + 0x10]
test al, al
je 0x63fa90
mov eax, dword [esp + 0x24]
test eax, eax
mov edx, dword [esp + 0xd0]
setg al
mov byte [esp + 0x22], al
mov ecx, dword [esp + 0x3c]
sub ecx, dword [esp + 0x44]
add ecx, dword [esp + 0x4c]
test ecx, ecx
jne 0x63fb9e
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0x10]
lea edx, [0x674680]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x54]
mov dword [esp + 8], ecx
call sym.runtime.mapdelete
jmp 0x63fbfd
mov eax, dword [esp + 0xcc]
mov ecx, dword [eax + 0x10]
lea edx, [0x674680]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [esp + 0x54]
mov dword [esp + 8], ecx
call sym.runtime.mapassign
mov edi, dword [esp + 0xc]
test byte [edi], al
mov eax, dword [0x8c87a0]
test eax, eax
je 0x63fbf4
mov dword [esp + 0x74], edi
lea eax, [0x688220]
mov dword [esp], eax
mov dword [esp + 4], edi
lea eax, [esp + 0x38]
mov dword [esp + 8], eax
call sym.runtime.wbMove
mov edi, dword [esp + 0x74]
lea esi, [esp + 0x38]
call fcn.0046cd6a
movzx eax, byte [esp + 0x22]
test al, al
je 0x63f55b
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0xc4]
mov eax, dword [edx]
call eax
add esp, 0xc8
ret
call sym.runtime.panicIndex
mov dword [esp], ebp
mov dword [esp + 4], edx
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
call sym.net_http._wantConn_.tryDeliver
mov eax, dword [esp + 0xd0]
mov edx, eax
mov ebx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x44]
mov esi, ebx
sub ebx, ebp
mov edi, dword [esp + 0x4c]
add ebx, edi
test ebx, ebx
jle 0x63fcee
cmp esi, ebp
jg 0x63fcb7
test edi, edi
jne 0x63fc83
xor ebp, ebp
jmp 0x63fc3c
mov ebx, dword [esp + 0x38]
mov ebp, dword [esp + 0x40]
mov esi, dword [esp + 0x48]
mov eax, dword [esp + 0x50]
mov dword [esp + 0x3c], edi
mov dword [esp + 0x40], eax
mov dword [esp + 0x38], esi
mov dword [esp + 0x44], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], ebp
mov dword [esp + 0x48], ebx
mov ecx, dword [esp + 0x3c]
mov eax, dword [esp + 0x44]
cmp ecx, eax
jbe 0x63fcf5
mov ecx, dword [esp + 0x38]
mov ebx, dword [0x8c87a0]
mov ebp, dword [ecx + eax*4]
test ebx, ebx
je 0x63fcde
mov ebx, dword [ecx + eax*4]
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebx
mov dword [ecx + eax*4], 0
inc dword [esp + 0x44]
jmp 0x63fc3c
xor eax, eax
jmp 0x63fb64
call sym.runtime.panicIndex
nop
call sym.runtime.deferreturn
add esp, 0xc8
ret
call sym.runtime.morestack_noctxt
jmp sym.net_http._Transport_.tryPutIdleConn