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

Disassembly:
lea r12, [rsp - 0x290]
cmp r12, qword [r14 + 0x10]
jbe 0x4a56aa
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 0x4a4cc6
jmp 0x4a4cd9
call sym.runtime.deferreturn
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
cmp dword [rsp + 0x320], 0x77
je 0x4a4ce8
jmp 0x4a4de2
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 0x4a4d0a
jmp 0x4a4d2b
mov qword [rsp + 0x160], rcx
lea rax, [0x00546a50]
call sym.runtime.typeAssert
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4a4d2d
jmp 0x4a4d2d
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 0x4a4d82
nop
jmp 0x4a4d9c
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
movzx ecx, byte [rcx + 0xb4]
xor ecx, 1
mov byte [rsp + 0x26], cl
jmp 0x4a4d9e
jmp 0x4a4d9e
cmp byte [rsp + 0x26], 0
jne 0x4a4da7
jmp 0x4a4dd3
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 0x4a4de4
jmp 0x4a4de4
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 0x4a4e07
jmp 0x4a4e28
mov qword [rsp + 0x160], rcx
lea rax, [0x00546a70]
call sym.runtime.typeAssert
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4a4e2a
jmp 0x4a4e2a
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 0x4a4e9d
jmp 0x4a5006
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 [0x005d1b30], 0
je 0x4a4f2b
jmp 0x4a4f2d
jmp 0x4a4f3f
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a4f3f
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 [0x005d1b30], 0
je 0x4a4f64
jmp 0x4a4f66
jmp 0x4a4f78
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a4f78
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 0x4a4ff3
jmp 0x4a4fb0
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, [0x004d4f20]
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 0x4a501b
jmp 0x4a526b
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 0x4a503d
jmp 0x4a5060
mov qword [rsp + 0x160], rcx
lea rax, [0x00546a90]
call sym.runtime.typeAssert
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x4a5062
jmp 0x4a5062
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 0x4a50d5
jmp 0x4a5266
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 [0x005d1b30], 0
nop
je 0x4a5164
jmp 0x4a5166
jmp 0x4a5178
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a5178
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 [0x005d1b30], 0
je 0x4a519d
jmp 0x4a51a0
jmp 0x4a51b2
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a51b2
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 0x4a5253
jmp 0x4a51eb
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 0x4a5692
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x2c], ecx
cmp ecx, 0x71
jle 0x4a5280
jmp 0x4a5299
cmp ecx, 0x58
je 0x4a5287
jmp 0x4a5289
jmp 0x4a52b9
cmp ecx, 0x71
je 0x4a5290
jmp 0x4a5292
jmp 0x4a52b9
jmp 0x4a5294
jmp 0x4a568e
cmp ecx, 0x73
je 0x4a52a2
nop
jmp 0x4a52a4
jmp 0x4a52b9
cmp ecx, 0x76
je 0x4a52ab
jmp 0x4a52ad
jmp 0x4a52b9
cmp ecx, 0x78
je 0x4a52b7
jmp 0x4a5688
jmp 0x4a52b9
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 0x4a52ea
jmp 0x4a5684
mov ecx, dword [rdx + 0x10]
mov dword [rsp + 0x28], ecx
mov rbx, qword [rsp + 0x1e0]
lea rax, [0x00546ca0]
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 0x4a532f
jmp 0x4a54d4
jmp 0x4a5331
jmp 0x4a5333
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 [0x005d1b30], 0
je 0x4a53d9
jmp 0x4a53e0
jmp 0x4a53f2
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a53f2
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 [0x005d1b30], 0
je 0x4a5417
jmp 0x4a5419
jmp 0x4a542b
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a542b
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 0x4a54c1
nop
jmp 0x4a5462
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 0x4a54e0
jmp 0x4a567c
jmp 0x4a54e2
jmp 0x4a54e4
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 [0x005d1b30], 0
je 0x4a558a
jmp 0x4a558c
jmp 0x4a559e
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 8]
mov qword [r11 + 8], rbx
jmp 0x4a559e
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 [0x005d1b30], 0
nop
je 0x4a55c4
jmp 0x4a55c6
jmp 0x4a55d8
call sym.runtime.gcWriteBarrier2
mov qword [r11], rdx
mov rbx, qword [rcx + 0x18]
mov qword [r11 + 8], rbx
jmp 0x4a55d8
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 0x4a5669
jmp 0x4a560b
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 0x4a5680
jmp 0x4a5682
jmp 0x4a5686
jmp 0x4a5686
jmp 0x4a5690
jmp 0x4a568a
jmp 0x4a568c
jmp 0x4a568e
jmp 0x4a5690
jmp 0x4a5692
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