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

Disassembly:
mov ecx, dword [0x5ce0f0]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x28]
cmp eax, dword [ecx + 8]
jbe 0x4ae8ec
sub esp, 0xa8
mov eax, dword [esp + 0xac]
mov dword [eax + 0xc], 0
lea ecx, [0x4d9140]
mov dword [esp], ecx
mov ecx, dword [esp + 0xb4]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0xb8]
mov dword [esp + 8], edx
call sym.runtime.assertE2I2
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x4ae16b
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x4adcc1
mov eax, dword [eax + 8]
cmp eax, 0x6e78e923
ja 0x4ad9ad
cmp eax, 0x43cfbb1f
ja 0x4ad811
cmp eax, 0x338a7ec0
jbe 0x4ad766
cmp eax, 0x4072c7d5
jne 0x4ad6da
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0ca0]
cmp eax, ecx
jne 0x4adcc1
nop
mov eax, dword [esp + 0xb0]
xor ecx, ecx
jmp 0x4ae756
cmp eax, 0x43cfbb1f
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d2fa0]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call sym.fmt._ss_.convertString
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp], 0
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call sym.runtime.stringtoslicebyte
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0xb8]
mov dword [ebx + 4], eax
mov dword [ebx + 8], ecx
mov eax, dword [0x5ce1f0]
test eax, eax
je 0x4ad75f
call sym.runtime.gcWriteBarrier2
mov dword [edi], edx
mov eax, dword [ebx]
mov dword [edi + 4], eax
mov dword [ebx], edx
jmp 0x4ae2c4
cmp eax, 0x2e74d42b
jne 0x4ad7bd
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0de0]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x40
call sym.fmt._ss_.scanInt
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xb8]
mov dword [edx + 4], eax
mov dword [edx], ecx
jmp 0x4ae2c4
cmp eax, 0x338a7ec0
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0ea0]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
call sym.fmt._ss_.scanUint
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov dword [ecx], eax
jmp 0x4ae2c4
cmp eax, 0x510ad14d
jbe 0x4ad8eb
cmp eax, 0x62de383d
je 0x4ad8a2
cmp eax, 0x6d448d5d
jne 0x4ad84e
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0ce0]
cmp eax, ecx
jne 0x4adcc1
nop
mov eax, dword [esp + 0xb0]
xor ecx, ecx
jmp 0x4ae5c4
cmp eax, 0x6e78e923
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0f20]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
call sym.fmt._ss_.scanUint
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov dword [ecx], eax
jmp 0x4ae2c4
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0da0]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
call sym.fmt._ss_.scanInt
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov dword [ecx], eax
jmp 0x4ae2c4
cmp eax, 0x49163278
jne 0x4ad942
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d1160]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x40
call sym.fmt._ss_.scanUint
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0xb8]
mov dword [edx + 4], eax
mov dword [edx], ecx
jmp 0x4ae2c4
cmp eax, 0x510ad14d
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0c60]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x40
call sym.fmt._ss_.scanComplex
movsd xmm0, qword [esp + 0xc]
movsd xmm1, qword [esp + 0x14]
cvtsd2ss xmm0, xmm0
mov eax, dword [esp + 0xb8]
movss dword [eax], xmm0
cvtsd2ss xmm0, xmm1
movss dword [eax + 4], xmm0
jmp 0x4ae2c4
cmp eax, 0xba585d67
ja 0x4adb1b
cmp eax, 0x889ce7f8
ja 0x4ada77
cmp eax, 0x7afcd172
jne 0x4ada22
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0c20]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], pe_nt_image_headers32
call sym.fmt._ss_.scanComplex
movsd xmm0, qword [esp + 0xc]
movsd xmm1, qword [esp + 0x14]
mov eax, dword [esp + 0xb8]
movsd qword [eax], xmm0
movsd qword [eax + 8], xmm1
jmp 0x4ae2c4
cmp eax, 0x889ce7f8
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d12a0]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
call sym.fmt._ss_.scanUint
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov word [ecx], ax
jmp 0x4ae2c4
cmp eax, 0x8f96facd
jne 0x4adac7
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0e60]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
call sym.fmt._ss_.scanUint
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov dword [ecx], eax
jmp 0x4ae2c4
cmp eax, 0xba585d67
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0d20]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x20
call sym.fmt._ss_.scanInt
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov dword [ecx], eax
jmp 0x4ae2c4
cmp eax, 0xd6631a7c
ja 0x4adbcb
cmp eax, 0xc3230e0b
jne 0x4adb77
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0d60]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x10
call sym.fmt._ss_.scanInt
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov word [ecx], ax
jmp 0x4ae2c4
cmp eax, 0xd6631a7c
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0e20]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 8
call sym.fmt._ss_.scanInt
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov byte [ecx], al
jmp 0x4ae2c4
cmp eax, 0xe47f76c1
jne 0x4adc30
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0b60]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call sym.fmt._ss_.convertString
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0xb8]
mov dword [edx + 4], eax
mov eax, dword [0x5ce1f0]
test eax, eax
je 0x4adc29
call sym.runtime.gcWriteBarrier2
mov dword [edi], ecx
mov eax, dword [edx]
mov dword [edi + 4], eax
mov dword [edx], ecx
jmp 0x4ae2c4
cmp eax, 0xf3b50de0
jne 0x4adc7c
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0ee0]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
mov dword [esp + 8], 8
call sym.fmt._ss_.scanUint
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xb8]
mov byte [ecx], al
jmp 0x4ae2c4
cmp eax, 0xfcd60fce
jne 0x4adcc1
mov eax, dword [esp + 0xb4]
lea ecx, [0x4d0be0]
cmp eax, ecx
jne 0x4adcc1
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call sym.fmt._ss_.scanBool
movzx eax, byte [esp + 8]
mov ecx, dword [esp + 0xb8]
mov byte [ecx], al
jmp 0x4ae2c4
mov eax, dword [esp + 0xb4]
test eax, eax
je 0x4add12
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xb8]
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x98]
test eax, eax
je 0x4add0a
movzx ecx, byte [eax + 0xf]
nop
mov edx, ecx
and ecx, 0x1f
test dl, 0x20
jne 0x4add01
or ecx, 0x80
mov edx, dword [esp + 0x9c]
jmp 0x4add18
xor ecx, ecx
xor eax, eax
xor edx, edx
jmp 0x4add18
xor ecx, ecx
xor eax, eax
xor edx, edx
mov ebx, ecx
and ecx, 0x1f
nop
cmp ecx, 0x16
jne 0x4ae4cb
mov dword [esp + 0x58], ebx
mov dword [esp + 0x6c], edx
mov dword [esp + 0x68], eax
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call sym.reflect.Value.Elem
mov eax, dword [esp + 0x14]
mov dword [esp + 0x38], eax
mov ecx, eax
and eax, 0x1f
mov edx, dword [esp + 0xc]
mov dword [esp + 0x94], edx
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x90], ebx
cmp eax, 0xc
ja 0x4adec5
cmp eax, 1
je 0x4ade7b
lea ebp, [eax - 2]
cmp ebp, 4
ja 0x4addf9
test ecx, 0x200
jne 0x4add90
lea eax, [0x514a80]
jmp 0x4adda8
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
mov dword [esp], edx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xac]
mov dword [esp], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.fmt._ss_.scanInt
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
call sym.reflect.Value.SetInt
jmp 0x4ae2c4
cmp eax, 7
jb 0x4ae3cb
test ecx, 0x200
jne 0x4ade12
lea eax, [0x514a80]
jmp 0x4ade2a
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
mov dword [esp], edx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xac]
mov dword [esp], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.fmt._ss_.scanUint
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
call sym.reflect.Value.SetUint
jmp 0x4ae2c4
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call sym.fmt._ss_.scanBool
movzx eax, byte [esp + 8]
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 8], ecx
mov byte [esp + 0xc], al
call sym.reflect.Value.SetBool
jmp 0x4ae2c4
cmp eax, 0x10
ja 0x4ae036
cmp eax, 0xe
jbe 0x4adf4c
test ecx, 0x200
jne 0x4adee3
lea eax, [0x514a80]
jmp 0x4adefb
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
mov dword [esp], edx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xac]
mov dword [esp], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call sym.fmt._ss_.scanComplex
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
call sym.reflect.Value.SetComplex
jmp 0x4ae2c4
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.SkipSpace
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.notEOF
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.floatToken
mov eax, dword [esp + 4]
mov dword [esp + 0x8c], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x54], ecx
mov edx, dword [esp + 0x38]
test edx, 0x200
jne 0x4adfa7
lea ebx, [0x514a80]
mov ebp, dword [esp + 0x94]
jmp 0x4adfd1
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov ecx, dword [esp + 0x90]
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, eax
mov ebp, edx
mov eax, dword [ebx + 0x18]
mov dword [esp], ebp
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xac]
mov dword [esp], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x54]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], eax
call sym.fmt._ss_.convertFloat
movsd xmm0, qword [esp + 0x10]
mov eax, dword [esp + 0x94]
mov dword [esp], eax
mov eax, dword [esp + 0x90]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 8], eax
movsd qword [esp + 0xc], xmm0
call sym.reflect.Value.SetFloat
jmp 0x4ae2c4
cmp eax, 0x17
je 0x4ae095
cmp eax, 0x18
jne 0x4ae3cb
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call sym.fmt._ss_.convertString
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x94]
mov dword [esp], edx
mov edx, dword [esp + 0x90]
mov dword [esp + 4], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 8], edx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call sym.reflect.Value.SetString
jmp 0x4ae2c4
test ecx, 0x200
jne 0x4ae0a5
lea eax, [0x514a80]
jmp 0x4ae0bd
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call sym.reflect.Value.typeSlow
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x64], edx
mov dword [esp + 0x2c], eax
mov ecx, dword [eax + 0x28]
mov dword [esp], edx
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov eax, dword [eax + 0x50]
mov dword [esp], ecx
call eax
cmp dword [esp + 4], 8
jne 0x4ae2cb
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call sym.fmt._ss_.convertString
mov eax, dword [esp + 0xc]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x2c]
mov dword [esp], edx
mov edx, dword [esp + 0x64]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
call sym.reflect.MakeSlice
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x94]
mov dword [esp], ebx
mov ebp, dword [esp + 0x90]
mov dword [esp + 4], ebp
mov esi, dword [esp + 0x38]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
call sym.reflect.Value.Set
xor eax, eax
jmp 0x4ae2bc
mov eax, dword [eax + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp], ecx
lea ecx, [0x514964]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0xac]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0xb0]
mov dword [esp + 0xc], ecx
call eax
mov eax, dword [esp + 0x10]
test eax, eax
jne 0x4ae1a6
add esp, 0xa8
ret
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
cmp dword [0x5a1838], ecx
je 0x4ae209
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], edx
lea eax, [0x4d9860]
mov dword [esp], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
call sym.runtime.convT
mov eax, dword [esp + 8]
lea ecx, [0x4d9860]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.gopanic
mov dword [esp + 0x88], edx
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x14]
mov edx, dword [0x5a183c]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym.runtime.ifaceeq
movzx eax, byte [esp + 0xc]
test al, al
je 0x4ae248
mov eax, dword [0x5a1840]
mov edx, dword [0x5a1844]
jmp 0x4ae1b6
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x88]
jmp 0x4ae1b6
mov dword [esp + 0x34], eax
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
mov edx, dword [esp + 0x90]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x38]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
call sym.reflect.Value.Index
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x34]
mov ebp, dword [esp + 0x70]
movzx esi, byte [ebp + ebx]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], edx
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
call sym.reflect.Value.SetUint
mov eax, dword [esp + 0x34]
inc eax
mov ecx, dword [esp + 0x30]
cmp eax, ecx
jl 0x4ae258
add esp, 0xa8
ret
mov eax, dword [esp + 0x58]
test eax, 0x200
jne 0x4ae3a6
lea eax, [0x514a80]
mov ecx, dword [esp + 0x68]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x4ed2d8]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x11
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call sym.runtime.concatstring2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x40], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x78], ecx
lea edx, [0x4d9c80]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x40]
mov dword [eax + 4], ecx
mov ecx, dword [0x5ce1f0]
test ecx, ecx
jne 0x4ae399
mov ecx, dword [esp + 0x78]
mov dword [eax], ecx
lea ecx, [0x51477c]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
lea eax, [0x4d9860]
mov dword [esp], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
call sym.runtime.convT
mov eax, dword [esp + 8]
lea ecx, [0x4d9860]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.gopanic
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x78]
mov dword [edi], ecx
jmp 0x4ae350
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
mov ecx, dword [esp + 0x6c]
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]
jmp 0x4ae2e4
mov eax, dword [esp + 0x58]
test eax, 0x200
jne 0x4ae4a6
lea eax, [0x514a80]
mov ecx, dword [esp + 0x68]
mov eax, dword [eax + 0x80]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x4ed2d8]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x11
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call sym.runtime.concatstring2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x74], ecx
lea edx, [0x4d9c80]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x3c]
mov dword [eax + 4], ecx
mov ecx, dword [0x5ce1f0]
test ecx, ecx
jne 0x4ae499
mov ecx, dword [esp + 0x74]
mov dword [eax], ecx
lea ecx, [0x51477c]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
lea eax, [0x4d9860]
mov dword [esp], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
call sym.runtime.convT
mov eax, dword [esp + 8]
lea ecx, [0x4d9860]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.gopanic
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x74]
mov dword [edi], ecx
jmp 0x4ae450
mov ecx, dword [esp + 0x68]
mov dword [esp], ecx
mov ecx, dword [esp + 0x6c]
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]
jmp 0x4ae3e4
test ebx, ebx
je 0x4ae5a7
test ebx, 0x200
jne 0x4ae5a7
lea ecx, [0x514a80]
mov ecx, dword [ecx + 0x80]
mov dword [esp], eax
call ecx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp], 0
lea edx, [0x4ee3a5]
mov dword [esp + 4], edx
mov dword [esp + 8], 0x14
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
call sym.runtime.concatstring2
mov eax, dword [esp + 0x18]
mov dword [esp + 0x44], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x7c], ecx
lea edx, [0x4d9c80]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x44]
mov dword [eax + 4], ecx
mov ecx, dword [0x5ce1f0]
test ecx, ecx
jne 0x4ae59a
mov ecx, dword [esp + 0x7c]
mov dword [eax], ecx
lea ecx, [0x51477c]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
lea eax, [0x4d9860]
mov dword [esp], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
call sym.runtime.convT
mov eax, dword [esp + 8]
lea ecx, [0x4d9860]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.gopanic
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x7c]
mov dword [edi], ecx
jmp 0x4ae551
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
call sym.reflect.Value.typeSlow
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
jmp 0x4ae4e5
cmp ecx, 8
jge 0x4ae669
lea edx, [0x4eaea5]
movzx ebx, byte [ecx + edx]
cmp ebx, 0x80
jge 0x4ae5e2
inc ecx
jmp 0x4ae60b
mov dword [esp], edx
mov dword [esp + 4], 8
mov dword [esp + 8], ecx
call sym.runtime.decoderune
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xb0]
lea edx, [0x4eaea5]
cmp eax, ebx
jne 0x4ae5c4
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.SkipSpace
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.notEOF
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.floatToken
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 0xc], 0x40
call sym.fmt._ss_.convertFloat
movsd xmm0, qword [esp + 0x10]
mov eax, dword [esp + 0xb8]
movsd qword [eax], xmm0
jmp 0x4ae2c4
mov ecx, eax
sar eax, 0x1f
lea edx, [esp + 0x5c]
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
call sym.runtime.intstring
mov dword [esp], 0
lea eax, [0x4eb772]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xb
lea eax, [0x4eab47]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 6
lea eax, [0x4eacf1]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], 7
call sym.runtime.concatstring4
mov eax, dword [esp + 0x28]
mov dword [esp + 0x48], eax
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x80], ecx
lea edx, [0x4d9c80]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x48]
mov dword [eax + 4], ecx
mov ecx, dword [0x5ce1f0]
test ecx, ecx
jne 0x4ae746
mov ecx, dword [esp + 0x80]
mov dword [eax], ecx
lea ecx, [0x51477c]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
lea eax, [0x4d9860]
mov dword [esp], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
call sym.runtime.convT
mov eax, dword [esp + 8]
lea ecx, [0x4d9860]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.gopanic
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x80]
mov dword [edi], ecx
jmp 0x4ae6fa
cmp ecx, 8
jge 0x4ae7ff
lea edx, [0x4eaea5]
movzx ebx, byte [ecx + edx]
cmp ebx, 0x80
jge 0x4ae774
inc ecx
jmp 0x4ae79d
mov dword [esp], edx
mov dword [esp + 4], 8
mov dword [esp + 8], ecx
call sym.runtime.decoderune
mov ebx, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0xb0]
lea edx, [0x4eaea5]
cmp eax, ebx
jne 0x4ae756
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.SkipSpace
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.notEOF
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call sym.fmt._ss_.floatToken
mov eax, dword [esp + 0xac]
mov dword [esp], eax
mov dword [esp + 0xc], 0x20
call sym.fmt._ss_.convertFloat
movsd xmm0, qword [esp + 0x10]
cvtsd2ss xmm0, xmm0
mov eax, dword [esp + 0xb8]
movss dword [eax], xmm0
jmp 0x4ae2c4
mov ecx, eax
sar eax, 0x1f
lea edx, [esp + 0x60]
mov dword [esp], edx
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
call sym.runtime.intstring
mov dword [esp], 0
lea eax, [0x4eb772]
mov dword [esp + 4], eax
mov dword [esp + 8], 0xb
lea eax, [0x4eab47]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], 6
lea eax, [0x4eacea]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], 7
call sym.runtime.concatstring4
mov eax, dword [esp + 0x28]
mov dword [esp + 0x4c], eax
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x84], ecx
lea edx, [0x4d9c80]
mov dword [esp], edx
call sym.runtime.newobject
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x4c]
mov dword [eax + 4], ecx
mov ecx, dword [0x5ce1f0]
test ecx, ecx
jne 0x4ae8dc
mov ecx, dword [esp + 0x84]
mov dword [eax], ecx
lea ecx, [0x51477c]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], eax
lea eax, [0x4d9860]
mov dword [esp], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
call sym.runtime.convT
mov eax, dword [esp + 8]
lea ecx, [0x4d9860]
mov dword [esp], ecx
mov dword [esp + 4], eax
call sym.runtime.gopanic
call sym.runtime.gcWriteBarrier1
mov ecx, dword [esp + 0x84]
mov dword [edi], ecx
jmp 0x4ae890
call sym.runtime.morestack_noctxt
jmp sym.fmt._ss_.scanOne