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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x4aba90
sub esp, 0x70
movsd xmm1, qword [esp + 0x78]
mov ecx, dword [esp + 0x74]
mov ebp, dword [ecx + 0x44]
mov byte [esp + 0x23], 0x28
xor ebx, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
mov ebx, ebp
mov dword [esp + 0x34], ebp
mov edi, dword [ebp]
mov eax, dword [ebp + 4]
mov edx, dword [ebp + 8]
mov ebp, eax
inc ebp
cmp ebp, edx
ja 0x4aba0d
mov dword [ebx + 4], ebp
mov ebx, edi
add ebx, eax
movzx ebp, byte [esp + 0x23]
xchg ebp, eax
mov byte [ebx], al
xchg ebp, eax
xor ebx, ebx
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x40], ebx
movzx ebp, byte [ecx + 0x53]
xchg ebp, eax
mov byte [esp + 0x22], al
xchg ebp, eax
movzx ebp, byte [ecx + 0x55]
xchg ebp, eax
mov byte [esp + 0x21], al
xchg ebp, eax
mov ebp, dword [ecx + 0x48]
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], 0
mov eax, dword [esp + 0x8c]
cmp eax, 0x47
jg 0x4ab8a4
cmp eax, 0x45
jne 0x4ab9bb
mov edx, 6
movzx ebx, byte [ecx + 0x51]
cmp bl, 0
je 0x4ab9b4
mov eax, dword [ecx + 0x4c]
mov dword [esp], ecx
movsd qword [esp + 4], xmm1
mov byte [esp + 0xc], 0x45
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x88]
mov dword [esp + 0x14], ebx
call dbg.fmt.(*fmt).formatFloat
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x28]
cmp ebx, 0
je 0x4ab868
movzx ebx, byte [esp + 0x21]
mov byte [ecx + 0x55], bl
movzx ebx, byte [esp + 0x22]
mov byte [ecx + 0x53], bl
mov eax, dword [esp + 0x24]
mov dword [ecx + 0x48], eax
mov ebp, dword [ecx + 0x44]
mov ebx, dword [str.i_____nil]
mov dword [esp + 0x4c], ebx
mov ebx, dword [0xb29dfc]
mov dword [esp + 0x50], ebx
mov ebx, dword [0xb29e00]
mov dword [esp + 0x54], ebx
xor ebx, ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], ebx
mov ebx, ebp
mov dword [esp + 0x30], ebp
cmp ebp, 0
je 0x4ab860
mov esi, dword [ebp]
mov ebp, dword [ebp + 4]
mov dword [esp + 0x68], ebp
mov ecx, dword [ebx + 8]
mov dword [esp + 0x64], esi
mov ebp, dword [esp + 0x68]
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x5c], ebp
mov ebx, dword [esp + 0x50]
mov edx, ebp
add ebp, ebx
mov dword [esp + 0x60], ecx
sub ebp, ecx
cmp ebp, 0
jle 0x4ab7f2
mov dword [esp], 0x50bc00
mov dword [esp + 0x58], esi
mov dword [esp + 4], esi
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice_n
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x60], ebx
mov ecx, dword [esp + 0x50]
mov ebx, dword [esp + 0x68]
mov ebp, esi
mov dword [esp + 0x58], esi
add ebp, ebx
mov dword [esp], ebp
mov ebx, dword [esp + 0x4c]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
call dbg.runtime.memmove
mov edx, dword [esp + 0x60]
mov ebp, dword [esp + 0x68]
mov ebx, dword [esp + 0x50]
add ebp, ebx
cmp ebp, edx
ja 0x4ab859
mov ebx, dword [esp + 0x30]
mov dword [ebx + 4], ebp
mov dword [ebx + 8], edx
mov ebp, dword [esp + 0x58]
cmp byte [0xb3d87c], 0
jne 0x4ab84b
mov dword [ebx], ebp
mov ebx, dword [esp + 0x50]
xor ebx, ebx
add esp, 0x70
ret
mov dword [esp], ebx
mov dword [esp + 4], ebp
call dbg.runtime.writebarrierptr
jmp 0x4ab841
call dbg.runtime.panicslice
ud2
mov dword [ebp], eax
jmp 0x4ab78e
mov eax, 1
mov byte [ecx + 0x53], al
xor eax, eax
mov byte [ecx + 0x55], al
mov eax, dword [esp + 0x24]
mov dword [ecx + 0x48], eax
movsd xmm1, qword [esp + 0x80]
movsd qword [esp + 0x78], xmm1
mov ebx, dword [esp + 0x28]
inc ebx
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x8c]
cmp eax, 0x47
jle 0x4ab6ec
cmp eax, 0x65
jg 0x4ab926
cmp eax, 0x62
jne 0x4ab8dd
mov dword [esp], ecx
movsd qword [esp + 4], xmm1
mov byte [esp + 0xc], 0x62
mov dword [esp + 0x10], 0
mov ebx, dword [esp + 0x88]
mov dword [esp + 0x14], ebx
call dbg.fmt.(*fmt).formatFloat
mov ecx, dword [esp + 0x74]
jmp 0x4ab730
cmp eax, 0x65
jne 0x4ab730
mov edx, 6
movzx ebx, byte [ecx + 0x51]
cmp bl, 0
je 0x4ab922
mov eax, dword [ecx + 0x4c]
mov dword [esp], ecx
movsd qword [esp + 4], xmm1
mov byte [esp + 0xc], 0x65
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x88]
mov dword [esp + 0x14], ebx
call dbg.fmt.(*fmt).formatFloat
mov ecx, dword [esp + 0x74]
jmp 0x4ab730
mov eax, edx
jmp 0x4ab8f7
cmp eax, 0x66
jne 0x4ab96b
mov edx, 6
movzx ebx, byte [ecx + 0x51]
cmp bl, 0
je 0x4ab967
mov eax, dword [ecx + 0x4c]
mov dword [esp], ecx
movsd qword [esp + 4], xmm1
mov byte [esp + 0xc], 0x66
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x88]
mov dword [esp + 0x14], ebx
call dbg.fmt.(*fmt).formatFloat
mov ecx, dword [esp + 0x74]
jmp 0x4ab730
mov eax, edx
jmp 0x4ab93c
cmp eax, 0x67
jne 0x4ab730
mov edx, 0xffffffff
movzx ebx, byte [ecx + 0x51]
cmp bl, 0
je 0x4ab9b0
mov eax, dword [ecx + 0x4c]
mov dword [esp], ecx
movsd qword [esp + 4], xmm1
mov byte [esp + 0xc], 0x67
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x88]
mov dword [esp + 0x14], ebx
call dbg.fmt.(*fmt).formatFloat
mov ecx, dword [esp + 0x74]
jmp 0x4ab730
mov eax, edx
jmp 0x4ab985
mov eax, edx
jmp 0x4ab70a
cmp eax, 0x46
je 0x4ab92b
cmp eax, 0x47
jne 0x4ab730
mov edx, 0xffffffff
movzx ebx, byte [ecx + 0x51]
cmp bl, 0
je 0x4aba09
mov eax, dword [ecx + 0x4c]
mov dword [esp], ecx
movsd qword [esp + 4], xmm1
mov byte [esp + 0xc], 0x47
mov dword [esp + 0x10], eax
mov ebx, dword [esp + 0x88]
mov dword [esp + 0x14], ebx
call dbg.fmt.(*fmt).formatFloat
mov ecx, dword [esp + 0x74]
jmp 0x4ab730
mov eax, edx
jmp 0x4ab9de
mov dword [esp], 0x50bc00
mov dword [esp + 4], edi
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ebp
call dbg.runtime.growslice
movsd xmm1, qword [esp + 0x78]
mov ecx, dword [esp + 0x74]
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x34]
cmp ebx, 0
je 0x4aba8c
mov eax, ebp
mov dword [esp + 0x2c], ebp
inc ebp
mov dword [ebx + 4], ebp
mov dword [ebx + 8], edx
mov dword [esp + 0x38], edi
cmp byte [0xb3d87c], 0
jne 0x4aba69
mov dword [ebx], edi
jmp 0x4ab6a2
mov dword [esp], ebx
mov dword [esp + 4], edi
call dbg.runtime.writebarrierptr
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x2c]
movsd xmm1, qword [esp + 0x78]
mov ecx, dword [esp + 0x74]
jmp 0x4ab6a2
mov dword [ebx], eax
jmp 0x4aba48
call dbg.runtime.morestack_noctxt
jmp dbg.fmt.(*fmt).fmt_complex