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

Disassembly:
lea r12, [rsp - 0x290]
cmp r12, qword [r14 + 0x10]
jbe 0x4f1a0a
push rbp
mov rbp, rsp
sub rsp, 0x308
mov qword [rsp + 0x318], rax
mov dword [rsp + 0x320], ebx
mov byte [rsp + 0x23], 0
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
cmp byte [rcx + 0xb3], 0
jne 0x4f1026
jmp 0x4f1039
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
cmp dword [rsp + 0x320], 0x77
je 0x4f1048
jmp 0x4f1142
movups xmmword [rsp + 0x288], xmm15
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rbx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
test rbx, rbx
jne 0x4f106a
jmp 0x4f108b
mov qword [rsp + 0x160], rcx
lea rax, [0x00646fd0]
call sym.runtime.typeAssert
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4f108d
jmp 0x4f108d
mov qword [rsp + 0x288], rbx
mov qword [rsp + 0x290], rcx
test rbx, rbx
setne byte [rsp + 0x26]
mov rcx, qword [rsp + 0x288]
mov rdx, qword [rsp + 0x290]
mov qword [rsp + 0x1d0], rcx
mov qword [rsp + 0x1d8], rdx
movzx ecx, byte [rsp + 0x26]
mov byte [rsp + 0x25], cl
mov byte [rsp + 0x22], cl
mov edx, ecx
xor ecx, 1
mov byte [rsp + 0x26], cl
test dl, dl
jne 0x4f10e2
nop
jmp 0x4f10fc
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
movzx ecx, byte [rcx + 0xb4]
xor ecx, 1
mov byte [rsp + 0x26], cl
jmp 0x4f10fe
jmp 0x4f10fe
cmp byte [rsp + 0x26], 0
jne 0x4f1107
jmp 0x4f1133
mov ebx, dword [rsp + 0x320]
mov rax, qword [rsp + 0x318]
call sym.fmt._pp_.badVerb
mov byte [rsp + 0x23], 1
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov dword [rsp + 0x320], 0x76
nop
jmp 0x4f1144
jmp 0x4f1144
movups xmmword [rsp + 0x278], xmm15
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rbx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
nop
test rbx, rbx
jne 0x4f1167
jmp 0x4f1188
mov qword [rsp + 0x160], rcx
lea rax, [0x00646ff0]
call sym.runtime.typeAssert
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4f118a
jmp 0x4f118a
mov qword [rsp + 0x278], rbx
mov qword [rsp + 0x280], rcx
test rbx, rbx
setne byte [rsp + 0x26]
mov rcx, qword [rsp + 0x278]
mov rdx, qword [rsp + 0x280]
mov qword [rsp + 0x150], rcx
mov qword [rsp + 0x158], rdx
movzx ecx, byte [rsp + 0x26]
mov byte [rsp + 0x24], cl
mov rcx, qword [rsp + 0x150]
mov rdx, qword [rsp + 0x158]
mov qword [rsp + 0x140], rcx
mov qword [rsp + 0x148], rdx
movzx ecx, byte [rsp + 0x24]
mov byte [rsp + 0x21], cl
test cl, cl
jne 0x4f11fd
jmp 0x4f1366
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x300], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x2f0], rdx
mov qword [rsp + 0x2f8], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x3c], ecx
movups xmmword [rsp + 0x228], xmm15
movups xmmword [rsp + 0x230], xmm15
movups xmmword [rsp + 0x240], xmm15
lea rcx, [rsp + 0x228]
mov qword [rsp + 0x250], rcx
test byte [rcx], al
lea rdx, [sym.fmt._pp_.handleMethods.deferwrap1]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x300]
cmp dword [0x006d4000], 0
je 0x4f128b
jmp 0x4f128d
jmp 0x4f129f
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4f129f
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2f8]
mov rbx, qword [rsp + 0x2f0]
mov qword [rcx + 0x10], rbx
cmp dword [0x006d4000], 0
je 0x4f12c4
jmp 0x4f12c6
jmp 0x4f12d8
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4f12d8
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x250]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x250]
mov qword [rsp + 0xe8], rcx
lea rax, [rsp + 0xd0]
call sym.runtime.deferprocStack
test eax, eax
jne 0x4f1353
jmp 0x4f1310
mov edi, dword [rsp + 0x320]
mov rdx, qword [rsp + 0x140]
test byte [rdx], al
mov rdx, qword [rdx + 0x18]
mov rax, qword [rsp + 0x148]
mov rcx, qword [rsp + 0x318]
lea rbx, [0x005942a0]
call rdx
nop
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
cmp byte [rcx + 0x50], 0
jne 0x4f137b
jmp 0x4f15cb
movups xmmword [rsp + 0x268], xmm15
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rbx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
test rbx, rbx
jne 0x4f139d
jmp 0x4f13c0
mov qword [rsp + 0x160], rcx
lea rax, [0x00647010]
call sym.runtime.typeAssert
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4f13c2
jmp 0x4f13c2
mov qword [rsp + 0x268], rbx
mov qword [rsp + 0x270], rcx
test rbx, rbx
setne byte [rsp + 0x26]
mov rcx, qword [rsp + 0x268]
mov rdx, qword [rsp + 0x270]
mov qword [rsp + 0x2e0], rcx
mov qword [rsp + 0x2e8], rdx
movzx ecx, byte [rsp + 0x26]
mov byte [rsp + 0x27], cl
mov rcx, qword [rsp + 0x2e0]
mov rdx, qword [rsp + 0x2e8]
mov qword [rsp + 0x130], rcx
mov qword [rsp + 0x138], rdx
movzx ecx, byte [rsp + 0x27]
mov byte [rsp + 0x20], cl
test cl, cl
jne 0x4f1435
jmp 0x4f15c6
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x2d8], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x2c8], rdx
mov qword [rsp + 0x2d0], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x38], ecx
movups xmmword [rsp + 0x1f8], xmm15
movups xmmword [rsp + 0x200], xmm15
movups xmmword [rsp + 0x210], xmm15
lea rcx, [rsp + 0x1f8]
mov qword [rsp + 0x220], rcx
test byte [rcx], al
lea rdx, [sym.fmt._pp_.handleMethods.deferwrap2]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2d8]
cmp dword [0x006d4000], 0
nop
je 0x4f14c4
jmp 0x4f14c6
jmp 0x4f14d8
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4f14d8
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2d0]
mov rbx, qword [rsp + 0x2c8]
mov qword [rcx + 0x10], rbx
cmp dword [0x006d4000], 0
je 0x4f14fd
jmp 0x4f1500
jmp 0x4f1512
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4f1512
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x38]
mov rdx, qword [rsp + 0x220]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x220]
mov qword [rsp + 0xb8], rcx
lea rax, [rsp + 0xa0]
nop
call sym.runtime.deferprocStack
test eax, eax
jne 0x4f15b3
jmp 0x4f154b
mov rcx, qword [rsp + 0x130]
test byte [rcx], al
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x138]
call rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rbx
mov rax, qword [rsp + 0x318]
test byte [rax], al
add rax, 0x40
mov qword [rsp + 0x1f0], rax
mov rcx, qword [rsp + 0x260]
mov rbx, qword [rsp + 0x258]
call sym.fmt._fmt_.fmtS
nop
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
jmp 0x4f19f2
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x2c], ecx
cmp ecx, 0x71
jle 0x4f15e0
jmp 0x4f15f9
cmp ecx, 0x58
je 0x4f15e7
jmp 0x4f15e9
jmp 0x4f1619
cmp ecx, 0x71
je 0x4f15f0
jmp 0x4f15f2
jmp 0x4f1619
jmp 0x4f15f4
jmp 0x4f19ee
cmp ecx, 0x73
je 0x4f1602
nop
jmp 0x4f1604
jmp 0x4f1619
cmp ecx, 0x76
je 0x4f160b
jmp 0x4f160d
jmp 0x4f1619
cmp ecx, 0x78
je 0x4f1617
jmp 0x4f19e8
jmp 0x4f1619
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x1e0], rdx
mov qword [rsp + 0x1e8], rcx
nop dword [rax + rax]
test rdx, rdx
jne 0x4f164a
jmp 0x4f19e4
mov ecx, dword [rdx + 0x10]
mov dword [rsp + 0x28], ecx
mov rbx, qword [rsp + 0x1e0]
lea rax, [0x006476e0]
call sym.runtime.interfaceSwitch
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x1c8], rbx
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x100], rcx
test rcx, rcx
je 0x4f168f
jmp 0x4f1834
jmp 0x4f1691
jmp 0x4f1693
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 0x120], rbx
mov qword [rsp + 0x128], rcx
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x2c0], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x2b0], rdx
mov qword [rsp + 0x2b8], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x34], ecx
movups xmmword [rsp + 0x198], xmm15
movups xmmword [rsp + 0x1a0], xmm15
movups xmmword [rsp + 0x1b0], xmm15
lea rcx, [rsp + 0x198]
mov qword [rsp + 0x1c0], rcx
test byte [rcx], al
lea rdx, [sym.fmt._pp_.handleMethods.deferwrap3]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2c0]
cmp dword [0x006d4000], 0
je 0x4f1739
jmp 0x4f1740
jmp 0x4f1752
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4f1752
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2b8]
mov rbx, qword [rsp + 0x2b0]
mov qword [rcx + 0x10], rbx
cmp dword [0x006d4000], 0
je 0x4f1777
jmp 0x4f1779
jmp 0x4f178b
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4f178b
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x34]
mov rdx, qword [rsp + 0x1c0]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x1c0]
mov qword [rsp + 0x88], rcx
lea rax, [rsp + 0x70]
call sym.runtime.deferprocStack
test eax, eax
jne 0x4f1821
nop
jmp 0x4f17c2
mov rcx, qword [rsp + 0x120]
test byte [rcx], al
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x128]
call rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rbx
mov edi, dword [rsp + 0x320]
mov rcx, qword [rsp + 0x318]
mov rdx, rax
mov rax, rcx
mov rsi, rbx
mov rbx, rdx
mov rcx, rsi
call sym.fmt._pp_.fmtString
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
nop
ret
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
cmp rcx, 1
je 0x4f1840
jmp 0x4f19dc
jmp 0x4f1842
jmp 0x4f1844
mov rcx, qword [rsp + 0x1e8]
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x118], rcx
mov byte [rsp + 0x23], 1
mov rcx, qword [rsp + 0x318]
mov qword [rsp + 0x2a8], rcx
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
mov rdx, qword [rcx + 0x18]
mov rcx, qword [rcx + 0x20]
mov qword [rsp + 0x298], rdx
mov qword [rsp + 0x2a0], rcx
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x30], ecx
movups xmmword [rsp + 0x168], xmm15
movups xmmword [rsp + 0x170], xmm15
movups xmmword [rsp + 0x180], xmm15
lea rcx, [rsp + 0x168]
mov qword [rsp + 0x190], rcx
test byte [rcx], al
lea rdx, [sym.fmt._pp_.handleMethods.deferwrap4]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2a8]
cmp dword [0x006d4000], 0
je 0x4f18ea
jmp 0x4f18ec
jmp 0x4f18fe
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4f18fe
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2a0]
mov rbx, qword [rsp + 0x298]
mov qword [rcx + 0x10], rbx
cmp dword [0x006d4000], 0
nop
je 0x4f1924
jmp 0x4f1926
jmp 0x4f1938
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4f1938
mov qword [rcx + 0x18], rdx
mov ecx, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x190]
test byte [rdx], al
mov dword [rdx + 0x20], ecx
mov rcx, qword [rsp + 0x190]
mov qword [rsp + 0x58], rcx
lea rax, [rsp + 0x40]
nop
call sym.runtime.deferprocStack
test eax, eax
jne 0x4f19c9
jmp 0x4f196b
mov rcx, qword [rsp + 0x110]
test byte [rcx], al
mov rcx, qword [rcx + 0x18]
mov rax, qword [rsp + 0x118]
call rcx
mov qword [rsp + 0x258], rax
mov qword [rsp + 0x260], rbx
mov edi, dword [rsp + 0x320]
mov rcx, qword [rsp + 0x318]
mov rdx, rax
mov rax, rcx
mov rsi, rbx
mov rbx, rdx
mov rcx, rsi
call sym.fmt._pp_.fmtString
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
jmp 0x4f19e0
jmp 0x4f19e2
jmp 0x4f19e6
jmp 0x4f19e6
jmp 0x4f19f0
jmp 0x4f19ea
jmp 0x4f19ec
jmp 0x4f19ee
jmp 0x4f19f0
jmp 0x4f19f2
mov byte [rsp + 0x23], 0
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov qword [rsp + 8], rax
mov dword [rsp + 0x10], ebx
call sym.runtime.morestack_noctxt.abi0
mov rax, qword [rsp + 8]
mov ebx, dword [rsp + 0x10]
jmp sym.fmt._pp_.handleMethods