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

Disassembly:
mov ecx, dword [0x7c4fec]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x84]
cmp eax, dword [ecx + 8]
jbe 0x553b96
sub esp, 0x104
mov eax, dword [esp + 0x110]
test eax, eax
je 0x5535c1
mov ecx, eax
and eax, 0x1f
mov dword [esp + 0x5c], eax
nop
cmp eax, 0x14
jne 0x552b8f
test ecx, 0x200
jne 0x552b46
lea edx, [0x6693e4]
mov ebx, dword [esp + 0x108]
jmp 0x552b70
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov edx, dword [esp + 0x10c]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, eax
mov ebx, ecx
mov eax, dword [edx + 0x6c]
mov dword [esp], ebx
call eax
mov eax, dword [esp + 4]
test eax, eax
je 0x55353d
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x110]
cmp eax, 0x17
jne 0x552ba5
mov edx, dword [esp + 0x10c]
mov ebx, dword [edx + 4]
test ebx, ebx
sete bl
jmp 0x552bae
mov edx, dword [esp + 0x10c]
xor ebx, ebx
test bl, bl
je 0x552c0f
movzx ebx, byte [esp + 0x129]
test bl, bl
je 0x552c0f
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
add esp, 0x104
ret
movzx ebx, byte [esp + 0x114]
test bl, bl
je 0x552dd7
mov ebx, dword [esp + 0x118]
test ebx, ebx
je 0x552dd7
lea ebx, [eax - 2]
cmp ebx, 4
ja 0x552dd7
test ecx, 0x200
jne 0x552c51
lea ebx, [0x6693e4]
mov ebp, dword [esp + 0x108]
jmp 0x552c74
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebx, eax
mov ebp, ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
call sym.reflect.New
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.reflect.Value.Elem
mov eax, dword [esp + 0xc]
mov dword [esp + 0xa0], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x9c], ecx
mov edx, dword [esp + 0x14]
mov dword [esp + 0x58], edx
mov ebx, dword [esp + 0x118]
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], ebx
call sym.reflect.Value.SetInt
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov ecx, dword [esp + 0x10c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x110]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call sym.reflect.valueInterface
mov eax, dword [esp + 0x10]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x98], ecx
mov edx, dword [esp + 0xa0]
mov dword [esp], edx
mov edx, dword [esp + 0x9c]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x58]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call sym.reflect.valueInterface
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x4c]
mov dword [esp], edx
mov edx, dword [esp + 0x98]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call sym.reflect.DeepEqual
movzx eax, byte [esp + 0x10]
test al, al
jne 0x552d86
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
jmp 0x552dd7
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
add esp, 0x104
ret
movzx ebx, byte [esp + 0x114]
test bl, bl
je 0x552f2f
mov ebx, dword [esp + 0x118]
test ebx, ebx
jne 0x552f2f
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov byte [esp + 0xc], 1
call sym.reflect.valueInterface
mov eax, dword [esp + 0x10]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x94], ecx
mov edx, dword [esp + 0x110]
test edx, 0x200
jne 0x552e43
lea ebx, [0x6693e4]
mov ebp, dword [esp + 0x108]
jmp 0x552e6d
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov ecx, dword [esp + 0x10c]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebx, eax
mov ebp, ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
call sym.reflect.Zero
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call sym.reflect.valueInterface
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x48]
mov dword [esp], edx
mov edx, dword [esp + 0x94]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp + 0xc], ecx
call sym.reflect.DeepEqual
movzx eax, byte [esp + 0x10]
test al, al
jne 0x552ede
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
jmp 0x552f2f
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
add esp, 0x104
ret
test ecx, 0x200
jne 0x552f46
lea ebx, [0x6693e4]
mov ebp, dword [esp + 0x108]
jmp 0x552f7b
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x10c]
mov ebx, eax
mov ebp, ecx
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x110]
cmp dword [0x785e70], ebx
je 0x552f8b
test ecx, 0x200
jmp 0x552fcc
mov eax, dword [0x785e74]
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], eax
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
jne 0x553350
mov eax, dword [esp + 0x110]
test eax, 0x200
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x110]
mov edx, dword [esp + 0x10c]
jne 0x552fdd
lea ebx, [0x6693e4]
mov ebp, dword [esp + 0x108]
jmp 0x553000
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov ebx, eax
mov ebp, ecx
mov dword [esp], ebx
mov dword [esp + 4], ebp
call sym.encoding_asn1.getUniversalType
movzx eax, byte [esp + 0x11]
movzx ecx, byte [esp + 0x10]
test al, al
je 0x553253
movzx eax, byte [esp + 8]
test al, al
jne 0x553245
mov eax, dword [esp + 0x124]
mov edx, dword [esp + 0xc]
test eax, eax
je 0x5530a3
cmp edx, 0x17
je 0x5530a3
lea eax, [0x62467e]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 0x2b
mov eax, dword [esp + 0xb4]
mov dword [esp], eax
mov dword [esp + 4], 0x2b
call sym.runtime.convTstring
mov eax, dword [esp + 8]
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
lea ecx, [0x6682b0]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], eax
add esp, 0x104
ret
mov byte [esp + 0x37], cl
mov ebx, dword [esp + 0x120]
test ebx, ebx
je 0x55311f
cmp edx, 0x13
jne 0x5530bb
test ebx, ebx
jmp 0x553126
lea eax, [0x625665]
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], 0x2f
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 4], 0x2f
call sym.runtime.convTstring
mov eax, dword [esp + 8]
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
lea ecx, [0x6682b0]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], eax
add esp, 0x104
ret
cmp edx, 0x13
jne 0x55318f
test ebx, ebx
jne 0x553a25
mov eax, dword [esp + 0x5c]
cmp eax, 0x18
jne 0x553143
mov edx, dword [esp + 0x10c]
mov ebx, dword [edx]
mov ebp, dword [edx + 4]
jmp 0x553180
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov ecx, dword [esp + 0x10c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x110]
mov dword [esp + 8], edx
call sym.reflect.Value.stringNonString
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x10]
mov eax, dword [esp + 0x5c]
movzx ecx, byte [esp + 0x37]
mov edx, dword [esp + 0x10c]
mov dword [esp + 0x38], ebp
mov dword [esp + 0x60], ebx
xor esi, esi
jmp 0x553a31
cmp edx, 0x17
jne 0x55323e
cmp eax, 0x18
je 0x553225
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov ecx, dword [esp + 0x10c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x110]
mov dword [esp + 8], edx
mov byte [esp + 0xc], 1
call sym.reflect.valueInterface
mov eax, dword [esp + 0x10]
mov dword [esp + 0x40], eax
mov esi, dword [esp + 0x14]
lea edi, [esp + 0xc4]
xor eax, eax
call fcn.0046a9fb
mov eax, dword [esp + 0x40]
lea ecx, [0x614d20]
cmp eax, ecx
jne 0x553a0f
lea edi, [esp + 0xc4]
call fcn.0046aede
lea edi, [esp]
lea esi, [esp + 0xc4]
call fcn.0046aede
call sym.encoding_asn1.outsideUTCRange
movzx eax, byte [esp + 0x14]
test al, al
je 0x55322f
movzx ecx, byte [esp + 0x37]
mov eax, 0x18
jmp 0x553638
movzx ecx, byte [esp + 0x37]
mov eax, 0x17
jmp 0x553638
mov eax, edx
jmp 0x553638
mov eax, dword [esp + 0x110]
test eax, 0x200
jmp 0x55325f
mov eax, dword [esp + 0x110]
test eax, 0x200
jne 0x553270
lea eax, [0x6693e4]
mov ecx, dword [esp + 0x108]
jmp 0x553296
mov ecx, dword [esp + 0x108]
mov dword [esp], ecx
mov ecx, dword [esp + 0x10c]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xd8], 0
mov dword [esp + 0xdc], 0
test eax, eax
je 0x5532b3
mov eax, dword [eax + 4]
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], ecx
lea eax, [0x61b37f]
mov dword [esp], eax
mov dword [esp + 4], 0x13
lea eax, [esp + 0xd8]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call sym.fmt.Sprintf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], ecx
mov eax, dword [esp + 0xbc]
mov dword [esp], eax
mov dword [esp + 4], ecx
call sym.runtime.convTstring
mov eax, dword [esp + 8]
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
lea ecx, [0x6682b0]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], eax
add esp, 0x104
ret
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x110]
mov dword [esp + 8], eax
mov byte [esp + 0xc], 1
call sym.reflect.valueInterface
mov eax, dword [esp + 0x10]
mov dword [esp + 0x44], eax
mov esi, dword [esp + 0x14]
lea edi, [esp + 0xe0]
xor eax, eax
call fcn.0046a9f7
mov eax, dword [esp + 0x44]
lea ecx, [0x606ca0]
cmp eax, ecx
jne 0x553622
lea edi, [esp + 0xe0]
call fcn.0046aeb6
lea edi, [esp + 0x70]
lea esi, [esp + 0xe0]
call fcn.0046aeb6
mov eax, dword [esp + 0x8c]
test eax, eax
jne 0x5534ea
lea eax, [0x6009c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x6c], eax
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
mov ebx, dword [esp + 0x80]
movzx ebp, byte [esp + 0x78]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 8
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ebx
xchg ebp, eax
mov byte [esp + 0x18], al
xchg ebp, eax
call sym.encoding_asn1.appendTagAndLength
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov edx, dword [esp + 0x6c]
mov dword [edx + 8], ecx
mov ebx, dword [0x7c5120]
test ebx, ebx
je 0x553469
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ebx, dword [edx + 0xc]
mov dword [edi + 4], ebx
mov dword [edx + 0xc], eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x80]
mov ebx, dword [esp + 0x84]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov edx, dword [esp + 0x6c]
mov dword [edx + 0x10], ecx
mov ecx, dword [0x7c5120]
test ecx, ecx
je 0x5534b6
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0x14]
mov dword [edi + 4], ecx
mov dword [edx + 0x14], eax
lea eax, [0x668720]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], edx
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
add esp, 0x104
ret
mov ecx, dword [esp + 0x88]
mov edx, dword [esp + 0x90]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
add esp, 0x104
ret
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov eax, dword [esp + 0x10c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x110]
mov dword [esp + 8], eax
call sym.reflect.Value.Elem
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
lea edi, [esp + 0xc]
lea esi, [esp + 0x114]
call fcn.0046aed4
call sym.encoding_asn1.makeField
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x30]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], edx
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], ebx
add esp, 0x104
ret
lea eax, [0x61fc9e]
mov dword [esp], eax
mov dword [esp + 4], 0x1e
mov dword [esp + 8], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call sym.fmt.Errorf
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
mov dword [esp + 0x134], eax
mov dword [esp + 0x138], ecx
add esp, 0x104
ret
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x5f4d80]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeE
movzx edx, byte [esp + 0x128]
test dl, dl
je 0x5536b4
cmp eax, 0x10
jne 0x553650
mov eax, 0x11
jmp 0x5536b4
lea eax, [0x61e1ff]
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], 0x1a
mov eax, dword [esp + 0xa4]
mov dword [esp], eax
mov dword [esp + 4], 0x1a
call sym.runtime.convTstring
mov eax, dword [esp + 8]
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
lea ecx, [0x6682b0]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], eax
add esp, 0x104
ret
mov dword [esp + 0x3c], eax
cmp eax, 0x11
jne 0x5536c9
test dl, dl
jne 0x5536c9
mov byte [esp + 0x128], 1
lea eax, [0x6009c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x108]
mov dword [esp], ecx
mov ecx, dword [esp + 0x10c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x110]
mov dword [esp + 8], ecx
lea edi, [esp + 0xc]
lea esi, [esp + 0x114]
call fcn.0046aed4
call sym.encoding_asn1.makeBody
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x28]
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x68]
mov dword [ebp + 0x10], eax
mov esi, dword [0x7c5120]
test esi, esi
je 0x553742
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov esi, dword [ebp + 0x14]
mov dword [edi + 4], esi
mov dword [ebp + 0x14], edx
test ecx, ecx
jne 0x5539e4
mov eax, dword [eax + 0x14]
mov dword [esp], edx
call eax
mov eax, dword [esp + 0x11c]
mov ecx, dword [esp + 4]
test eax, eax
je 0x553935
movzx edx, byte [esp + 0x116]
test dl, dl
je 0x55377b
mov edx, 1
jmp 0x553793
movzx edx, byte [esp + 0x117]
test dl, dl
je 0x55378e
mov edx, 3
jmp 0x553793
mov edx, 2
movzx ebx, byte [esp + 0x115]
test bl, bl
jne 0x5537a6
mov eax, dword [eax]
jmp 0x55393b
mov dword [esp + 0x54], ecx
mov dword [esp + 0x50], edx
mov eax, dword [esp + 0x68]
mov dword [esp], eax
mov dword [esp + 4], 0
mov dword [esp + 8], 8
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
movzx edx, byte [esp + 0x37]
mov byte [esp + 0x18], dl
call sym.encoding_asn1.appendTagAndLength
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov edx, dword [esp + 0x68]
mov dword [edx + 8], ecx
mov ebx, dword [0x7c5120]
test ebx, ebx
je 0x55382b
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ebx, dword [edx + 0xc]
mov dword [edi + 4], ebx
mov dword [edx + 0xc], eax
lea eax, [0x6009c0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
lea ecx, [0x668720]
mov dword [eax + 0x10], ecx
mov edx, dword [0x7c5120]
test edx, edx
jne 0x553859
mov edx, dword [esp + 0x68]
jmp 0x553864
call sym.runtime.gcWriteBarrier1
mov edx, dword [esp + 0x68]
mov dword [edi], edx
mov dword [esp + 0x64], eax
mov dword [eax + 0x14], edx
mov ecx, dword [edx + 8]
mov edx, dword [edx + 0xc]
mov ecx, dword [ecx + 0x14]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 0x11c]
mov eax, dword [eax]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x64]
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 8
mov ebx, dword [esp + 0x50]
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x54]
add eax, ecx
mov dword [esp + 0x14], eax
mov byte [esp + 0x18], 1
call sym.encoding_asn1.appendTagAndLength
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov edx, dword [esp + 0x64]
mov dword [edx + 8], ecx
mov ecx, dword [0x7c5120]
test ecx, ecx
je 0x553901
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xc]
mov dword [edi + 4], ecx
mov dword [edx + 0xc], eax
lea eax, [0x668720]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], edx
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
add esp, 0x104
ret
xor edx, edx
mov eax, dword [esp + 0x3c]
mov ebx, dword [esp + 0x68]
mov dword [esp], ebx
mov dword [esp + 4], 0
mov dword [esp + 8], 8
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
movzx eax, byte [esp + 0x37]
mov byte [esp + 0x18], al
call sym.encoding_asn1.appendTagAndLength
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.runtime.convTslice
mov eax, dword [esp + 0xc]
lea ecx, [0x668708]
mov edx, dword [esp + 0x68]
mov dword [edx + 8], ecx
mov ecx, dword [0x7c5120]
test ecx, ecx
je 0x5539b0
call sym.runtime.gcWriteBarrier2
mov dword [edi], eax
mov ecx, dword [edx + 0xc]
mov dword [edi + 4], ecx
mov dword [edx + 0xc], eax
lea eax, [0x668720]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], edx
mov dword [esp + 0x134], 0
mov dword [esp + 0x138], 0
add esp, 0x104
ret
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], ebx
add esp, 0x104
ret
mov dword [esp], eax
mov dword [esp + 4], ecx
lea eax, [0x5f4d80]
mov dword [esp + 8], eax
call sym.runtime.panicdottypeE
mov eax, ebx
jmp 0x553638
movzx ecx, byte [esp + 0x37]
cmp esi, ebp
jge 0x553b8a
movzx edi, byte [ebx + esi]
cmp edi, 0x80
jge 0x553a48
inc esi
jmp 0x553a78
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
call sym.runtime.decoderune
mov edi, dword [esp + 0xc]
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x5c]
movzx ecx, byte [esp + 0x37]
mov edx, dword [esp + 0x10c]
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x38]
cmp edi, 0x80
jge 0x553ade
lea ecx, [edi - 0x61]
cmp cl, 0x19
jbe 0x553a2c
lea ecx, [edi - 0x41]
cmp cl, 0x19
jbe 0x553a2c
lea ecx, [edi - 0x30]
cmp cl, 9
jbe 0x553a2c
lea ecx, [edi - 0x27]
cmp cl, 2
jbe 0x553a2c
lea ecx, [edi - 0x2b]
cmp cl, 4
jbe 0x553a2c
xchg edi, eax
cmp al, 0x20
xchg edi, eax
je 0x553a2c
xchg edi, eax
cmp al, 0x3a
xchg edi, eax
je 0x553a2c
xchg edi, eax
cmp al, 0x3d
xchg edi, eax
je 0x553a2c
xchg edi, eax
cmp al, 0x3f
xchg edi, eax
je 0x553a2c
cmp eax, 0x18
movzx ecx, byte [esp + 0x37]
jmp 0x553ae1
cmp eax, 0x18
jne 0x553aea
mov eax, dword [edx]
mov ebx, dword [edx + 4]
jmp 0x553b10
mov eax, dword [esp + 0x108]
mov dword [esp], eax
mov dword [esp + 4], edx
mov ecx, dword [esp + 0x110]
mov dword [esp + 8], ecx
call sym.reflect.Value.stringNonString
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x10]
mov dword [esp], eax
mov dword [esp + 4], ebx
call sym.unicode_utf8.ValidString
movzx eax, byte [esp + 8]
test al, al
je 0x553b38
movzx ecx, byte [esp + 0x37]
mov edx, dword [esp + 0x10c]
mov eax, 0xc
jmp 0x553b8f
lea eax, [0x5fa0e0]
mov dword [esp], eax
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x1c
lea ecx, [0x61ef6d]
mov dword [eax], ecx
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
lea ecx, [0x6681c0]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x138], eax
add esp, 0x104
ret
mov eax, 0x13
mov ebx, eax
jmp 0x553a25
call sym.runtime.morestack_noctxt
jmp sym.encoding_asn1.makeField