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

Disassembly:
lea r12, [rsp - 0x290]
cmp r12, qword [r14 + 0x10]
jbe 0x1400a01aa
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 0x14009f8c6
jmp 0x14009f8d9
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
cmp dword [rsp + 0x320], 0x77
je 0x14009f8e8
jmp 0x14009f9e2
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 0x14009f90a
jmp 0x14009f92b
mov qword [rsp + 0x160], rcx
lea rax, [0x1400cc630]
call fcn.14000c280
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x14009f92d
jmp 0x14009f92d
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 0x14009f982
nop
jmp 0x14009f99c
mov rcx, qword [rsp + 0x318]
test byte [rcx], al
movzx ecx, byte [rcx + 0xb4]
xor ecx, 1
mov byte [rsp + 0x26], cl
jmp 0x14009f99e
jmp 0x14009f99e
cmp byte [rsp + 0x26], 0
jne 0x14009f9a7
jmp 0x14009f9d3
mov ebx, dword [rsp + 0x320]
mov rax, qword [rsp + 0x318]
call fcn.14009df00
mov byte [rsp + 0x23], 1
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov dword [rsp + 0x320], 0x76
nop
jmp 0x14009f9e4
jmp 0x14009f9e4
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 0x14009fa07
jmp 0x14009fa28
mov qword [rsp + 0x160], rcx
lea rax, [0x1400cc650]
call fcn.14000c280
mov rcx, qword [rsp + 0x160]
mov rbx, rax
jmp 0x14009fa2a
jmp 0x14009fa2a
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 0x14009fa9d
jmp 0x14009fbc8
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, [0x1400a0360]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x300]
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2f0]
mov rbx, qword [rsp + 0x2f8]
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rbx
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 fcn.140039ce0
test eax, eax
jne 0x14009fbb5
jmp 0x14009fb72
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, [0x140107840]
nop
call rdx
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call fcn.140039f00
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 0x14009fbdd
jmp 0x14009fdeb
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 0x14009fbff
jmp 0x14009fc22
mov qword [rsp + 0x160], rcx
lea rax, [0x1400cc670]
call fcn.14000c280
mov rcx, qword [rsp + 0x160]
mov rbx, rax
nop
jmp 0x14009fc24
jmp 0x14009fc24
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 0x14009fc97
jmp 0x14009fde6
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, [0x1400a02e0]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2d8]
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2c8]
mov rbx, qword [rsp + 0x2d0]
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rbx
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]
call fcn.140039ce0
test eax, eax
jne 0x14009fdd3
jmp 0x14009fd6c
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 fcn.14009bb20
nop
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
jmp 0x1400a0192
mov ecx, dword [rsp + 0x320]
mov dword [rsp + 0x2c], ecx
cmp ecx, 0x71
jle 0x14009fe00
jmp 0x14009fe19
cmp ecx, 0x58
je 0x14009fe07
jmp 0x14009fe09
jmp 0x14009fe39
cmp ecx, 0x71
je 0x14009fe10
jmp 0x14009fe12
jmp 0x14009fe39
jmp 0x14009fe14
jmp 0x1400a018e
cmp ecx, 0x73
je 0x14009fe22
nop
jmp 0x14009fe24
jmp 0x14009fe39
cmp ecx, 0x76
je 0x14009fe2b
jmp 0x14009fe2d
jmp 0x14009fe39
cmp ecx, 0x78
je 0x14009fe37
jmp 0x1400a0188
jmp 0x14009fe39
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 0x14009fe6a
jmp 0x1400a0184
mov ecx, dword [rdx + 0x10]
mov dword [rsp + 0x28], ecx
mov rbx, qword [rsp + 0x1e0]
lea rax, [0x1400cc900]
call fcn.14000c620
mov qword [rsp + 0x108], rax
mov qword [rsp + 0x1c8], rbx
mov rcx, qword [rsp + 0x108]
mov qword [rsp + 0x100], rcx
test rcx, rcx
je 0x14009feaf
jmp 0x1400a0013
jmp 0x14009feb1
jmp 0x14009feb3
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, [0x1400a0260]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2c0]
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2b0]
mov rbx, qword [rsp + 0x2b8]
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rbx
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 fcn.140039ce0
test eax, eax
jne 0x1400a0000
jmp 0x14009ff9d
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 fcn.14009eac0
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
cmp rcx, 1
je 0x1400a0020
jmp 0x1400a017c
jmp 0x1400a0022
jmp 0x1400a0024
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, [0x1400a01e0]
mov qword [rcx], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x2a8]
mov qword [rcx + 8], rdx
test byte [rcx], al
mov rdx, qword [rsp + 0x298]
mov rbx, qword [rsp + 0x2a0]
mov qword [rcx + 0x10], rdx
mov qword [rcx + 0x18], rbx
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]
call fcn.140039ce0
test eax, eax
jne 0x1400a0169
jmp 0x1400a010b
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 fcn.14009eac0
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
jmp 0x1400a0180
jmp 0x1400a0182
jmp 0x1400a0186
jmp 0x1400a0186
jmp 0x1400a0190
jmp 0x1400a018a
jmp 0x1400a018c
jmp 0x1400a018e
jmp 0x1400a0190
jmp 0x1400a0192
mov byte [rsp + 0x23], 0
call fcn.140039f00
movzx eax, byte [rsp + 0x23]
add rsp, 0x308
pop rbp
ret
mov qword [rsp + 8], rax
mov dword [rsp + 0x10], ebx
call fcn.140066440
mov rax, qword [rsp + 8]
mov ebx, dword [rsp + 0x10]
jmp fcn.14009f880