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

Disassembly:
mov ecx, dword [0x911770]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x24]
cmp eax, dword [ecx + 8]
jbe 0x64a28c
sub esp, 0xa4
mov eax, dword [esp + 0xac]
mov ecx, dword [eax + 0x80]
test ecx, ecx
je 0x649c27
mov edx, dword [eax + 0x84]
jmp 0x649c33
lea ecx, [0x7589d8]
lea edx, [0x911620]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x40], edx
mov ebx, dword [eax + 0x20]
test ebx, ebx
je 0x649c81
lea ebp, [0x757fb8]
cmp ebx, ebp
je 0x649c50
xor ebx, ebx
jmp 0x649c86
mov ecx, dword [eax + 0x24]
mov dword [esp], ebx
mov dword [esp + 4], ecx
lea ecx, [0x911620]
mov dword [esp + 8], ecx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
mov ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x40]
mov ebx, eax
mov eax, dword [esp + 0xac]
jmp 0x649c86
mov ebx, 1
test bl, bl
je 0x649c90
xor ebp, ebp
xor ebx, ebx
jmp 0x649cba
mov ebx, dword [eax + 0x2c]
mov ebp, dword [eax + 0x30]
test ebx, ebx
xchg esi, ebx
setne bl
xchg esi, ebx
test ebp, ebp
xchg edi, ebx
setne bl
xchg edi, ebx
or edi, esi
xchg edi, eax
test al, al
xchg edi, eax
jne 0x649cba
mov ebp, 0xffffffff
mov ebx, 0xffffffff
mov dword [esp + 0x30], ebx
mov dword [esp + 0x38], ebp
mov eax, dword [ecx + 0x18]
mov dword [esp], edx
lea esi, [0x6ab900]
mov dword [esp + 4], esi
lea esi, [0x911620]
mov dword [esp + 8], esi
call eax
lea eax, [0x6b7080]
cmp dword [esp + 0xc], eax
jne 0x649cf0
mov eax, dword [esp + 0x10]
jmp 0x649cf2
xor eax, eax
mov dword [esp + 0x44], eax
lea ecx, [0x69f3c0]
mov dword [esp], ecx
mov dword [esp + 4], 0
call sym.runtime.makechan
mov eax, dword [esp + 8]
mov dword [esp + 0x5c], eax
lea ecx, [0x69f3c0]
mov dword [esp], ecx
mov dword [esp + 4], 0
call sym.runtime.makechan
mov eax, dword [esp + 8]
mov dword [esp + 0x58], eax
lea ecx, [0x69f3c0]
mov dword [esp], ecx
mov dword [esp + 4], 0
call sym.runtime.makechan
mov eax, dword [esp + 8]
mov dword [esp + 0x54], eax
lea ecx, [0x69f3c0]
mov dword [esp], ecx
mov dword [esp + 4], 0
call sym.runtime.makechan
mov eax, dword [esp + 8]
mov dword [esp + 0x50], eax
lea ecx, [0x6df760]
mov dword [esp], ecx
call sym.runtime.newobject
mov eax, dword [0x911a40]
mov ecx, dword [esp + 4]
test eax, eax
jne 0x649d97
mov eax, dword [esp + 0xa8]
mov edx, dword [esp + 0x40]
jmp 0x649dac
call sym.runtime.gcWriteBarrier2
mov eax, dword [esp + 0xa8]
mov dword [edi], eax
mov edx, dword [esp + 0x40]
mov dword [edi + 4], edx
mov dword [ecx], eax
mov ebx, dword [esp + 0x34]
mov dword [ecx + 4], ebx
mov dword [ecx + 8], edx
mov ebp, dword [0x911a40]
mov esi, dword [esp + 0xac]
mov edi, dword [esi + 0x70]
test ebp, ebp
je 0x649dd7
mov ebp, edi
call sym.runtime.gcWriteBarrier1
mov dword [edi], ebp
mov edi, ebp
mov dword [ecx + 0xc], edi
cmp dword [esi + 4], 4
jne 0x649df2
mov ebp, dword [esi]
cmp dword [ebp], 0x44414548
xchg ebp, ebx
sete bl
xchg ebp, ebx
jmp 0x649df4
xor ebp, ebp
xchg ebp, eax
mov byte [ecx + 0x65], al
xchg ebp, eax
mov ebp, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov dword [ecx + 0xb4], ebp
mov ebp, dword [0x911a40]
test ebp, ebp
je 0x649e53
mov ebp, edi
call sym.runtime.gcWriteBarrier6
mov dword [edi], ebp
mov edx, dword [esp + 0x44]
mov dword [edi + 4], edx
mov ebx, dword [esp + 0x5c]
mov dword [edi + 8], ebx
mov esi, dword [esp + 0x58]
mov dword [edi + 0xc], esi
mov eax, dword [esp + 0x54]
mov dword [edi + 0x10], eax
mov eax, dword [esp + 0x50]
mov dword [edi + 0x14], eax
mov eax, dword [esp + 0xa8]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0xac]
mov edi, ebp
mov dword [esp + 0x4c], ecx
mov dword [ecx + 0xb8], edi
mov ebp, dword [esp + 0x30]
mov dword [ecx + 0xbc], ebp
mov ebp, dword [esp + 0x38]
mov dword [ecx + 0xc0], ebp
mov ebp, dword [esp + 0x44]
mov dword [ecx + 0x10], ebp
mov ebp, dword [esp + 0x5c]
mov dword [ecx + 0x80], ebp
mov ebp, dword [esp + 0x58]
mov dword [ecx + 0x74], ebp
mov ebp, dword [esp + 0x54]
mov dword [ecx + 0x8c], ebp
mov ebp, dword [esp + 0x50]
mov dword [ecx + 0x84], ebp
mov ebp, dword [eax]
movzx edi, byte [ebp + 0x14]
xchg edi, eax
test al, al
xchg edi, eax
je 0x649eb0
xor ebp, ebp
jmp 0x649f57
mov ebp, dword [ebp + 0x50]
test ebp, ebp
je 0x649ecb
movzx ebp, byte [ebp + 0x89]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x649ecb
xor ebp, ebp
jmp 0x649f57
mov eax, dword [esi + 0x1c]
mov dword [esp], eax
lea eax, [0x6eb7ed]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xf
call sym.net_textproto.MIMEHeader.Get
mov eax, dword [esp + 0x10]
test eax, eax
je 0x649f0e
mov eax, dword [esp + 0xa8]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0xac]
xor ebp, ebp
jmp 0x649f57
mov eax, dword [esp + 0xac]
mov ecx, dword [eax + 0x1c]
mov dword [esp], ecx
lea ecx, [0x6e8c8b]
mov dword [esp + 4], ecx
mov dword [esp + 8], 5
call sym.net_textproto.MIMEHeader.Get
mov eax, dword [esp + 0x10]
test eax, eax
sete al
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0x34]
mov esi, dword [esp + 0xac]
mov ebp, eax
mov eax, dword [esp + 0xa8]
xchg ebp, eax
test al, al
xchg ebp, eax
je 0x649f6b
movzx ebp, byte [ecx + 0x65]
xchg ebp, eax
test al, al
xchg ebp, eax
jne 0x649f6b
mov byte [ecx + 0x64], 1
lea eax, [0x6bde00]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [sym.net_http._http2ClientConn_.roundTrip.gowrap1]
mov dword [eax], ecx
mov ecx, dword [0x911a40]
test ecx, ecx
jne 0x649fa3
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xac]
mov ebx, dword [esp + 0xb0]
jmp 0x649fc2
call sym.runtime.gcWriteBarrier3
mov ecx, dword [esp + 0x4c]
mov dword [edi], ecx
mov edx, dword [esp + 0xac]
mov dword [edi + 4], edx
mov ebx, dword [esp + 0xb0]
mov dword [edi + 8], ebx
mov dword [eax + 4], ecx
mov dword [eax + 8], edx
mov dword [eax + 0xc], ebx
mov dword [esp], eax
call sym.runtime.newproc
lea eax, [sym.net_http._http2ClientConn_.roundTrip.func1]
mov dword [esp + 0x94], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x98], eax
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0x40]
mov dword [esp + 0xa0], edx
lea ebx, [sym.net_http._http2ClientConn_.roundTrip.func2]
mov dword [esp + 0x80], ebx
mov dword [esp + 0x84], eax
mov ebx, dword [esp + 0xac]
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0xa8]
mov dword [esp + 0x8c], ebx
lea ebx, [esp + 0x94]
mov dword [esp + 0x90], ebx
mov ebp, dword [eax + 0x8c]
mov dword [esp + 0x5c], ebp
mov esi, dword [eax + 0x74]
mov dword [esp + 0x58], esi
mov edi, dword [ecx + 0x10]
mov dword [esp], edx
call edi
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx + 0xc]
lea edi, [esp + 0x60]
mov ebx, eax
xor eax, eax
call fcn.00471f18
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x70], eax
mov dword [esp + 0x68], ebx
mov dword [esp + 0x60], edx
lea eax, [esp + 0x60]
mov dword [esp], eax
lea eax, [esp + 0x20]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 4
mov byte [esp + 0x14], 1
call sym.runtime.selectgo
mov eax, dword [esp + 0x18]
test eax, eax
je 0x64a21b
cmp eax, 1
je 0x64a1a2
cmp eax, 2
jne 0x64a16b
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x8c]
mov dword [esp], 0
mov dword [esp + 4], ecx
call sym.runtime.selectnbrecv
movzx eax, byte [esp + 8]
test al, al
je 0x64a131
mov eax, dword [esp + 0x80]
lea edx, [esp + 0x80]
call eax
mov eax, dword [esp]
mov ecx, dword [esp + 4]
mov ebx, dword [esp + 8]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], ebx
add esp, 0xa4
ret
mov eax, dword [esp + 0x94]
lea edx, [esp + 0x94]
call eax
mov eax, dword [esp + 0x4c]
mov ecx, dword [eax + 0x78]
mov eax, dword [eax + 0x7c]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], eax
add esp, 0xa4
ret
mov eax, dword [esp + 0x80]
lea edx, [esp + 0x80]
call eax
mov eax, dword [esp]
mov ecx, dword [esp + 4]
mov ebx, dword [esp + 8]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
mov dword [esp + 0xbc], ebx
add esp, 0xa4
ret
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x14]
mov ecx, dword [esp + 0x40]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x48], ecx
mov edx, dword [esp + 0x4c]
mov dword [esp], edx
call sym.net_http._http2clientStream_.abortStream
mov eax, dword [sym.net_http._http2ClientConn_.roundTrip.func3]
mov ecx, dword [esp + 0x4c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x48]
mov dword [esp + 8], ecx
lea edx, [0x704484]
call eax
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0xa4
ret
mov eax, dword [0x8e9fe0]
mov ecx, dword [0x8e9fe4]
mov edx, dword [esp + 0x4c]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.net_http._http2clientStream_.abortStream
mov eax, dword [0x8e9fe0]
mov ecx, dword [sym.net_http._http2ClientConn_.roundTrip.func3]
mov edx, dword [0x8e9fe4]
mov ebx, dword [esp + 0x4c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
lea edx, [0x704484]
call ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0xa4
ret
call sym.runtime.morestack_noctxt
jmp sym.net_http._http2ClientConn_.roundTrip