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

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x398
pxor xmm0, xmm0
mov r11, qword [rcx + 8]
mov rbp, qword [r11 + 0x20]
mov rax, rcx
mov qword [rsp + 0x3e8], rdx
mov rdx, qword [rcx]
mov r12, qword [rax + 0x10]
mov qword [rsp + 0x3f0], r8
mov r8, qword [rdx + 8]
mov qword [rsp + 0x3e0], rcx
movzx edx, byte [r12 + 0x10]
mov ecx, dword [r11 + 0x14]
mov qword [rsp + 0x110], 0
movaps xmmword [rsp + 0xe0], xmm0
lea r9, [rdx + rdx*2]
movaps xmmword [rsp + 0xf0], xmm0
lea rdx, [rdx + r9*4]
movaps xmmword [rsp + 0x100], xmm0
lea rax, [r8 + rdx*8 + 8]
mov qword [rsp + 0x28], rax
mov r9d, dword [rax + 0x40]
test byte [rax + 0x3c], 0x10
jne 0x14005d2f8
movsxd rdx, ecx
lea rcx, [rdx*8]
sub rcx, rdx
lea r13, [rbp + rcx*8]
cmp rbp, r13
jae 0x14005d2f8
mov qword [rsp + 0x48], r11
mov r14, qword [rsp + 0x3e0]
mov r15d, r9d
test byte [rbp + 0x15], 2
je 0x14005d2ef
mov rcx, qword [rbp + 0x20]
mov rax, qword [rcx + 0x1e8]
and rax, qword [r12 + 8]
jne 0x14005d310
add rbp, 0x38
cmp rbp, r13
jb 0x14005d2d7
xor eax, eax
add rsp, 0x398
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
movsxd rdx, dword [rcx + 0x14]
movdqu xmm1, xmmword [r14]
movdqu xmm2, xmmword [r14 + 0x10]
lea rax, [rdx*8]
sub rax, rdx
mov rdx, qword [rcx + 0x20]
movaps xmmword [rsp + 0xc0], xmm2
movaps xmmword [rsp + 0xb0], xmm1
lea r11, [rdx + rax*8]
mov rax, qword [r14 + 0x20]
mov qword [rsp + 0xd0], rax
mov rsi, qword [rcx + 0x20]
lea rax, [rsp + 0x120]
mov qword [rsp + 0xc8], rax
cmp rsi, r11
jae 0x14005d8c9
lea rax, [rsp + 0x128]
mov qword [rsp + 0x80], r13
xor ebx, ebx
mov edi, 1
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x50], r11
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x88], r12
mov r12, rax
mov qword [rsp + 0x90], rbp
mov ebp, edi
nop word cs:[rax + rax]
test byte [rsi + 0x15], 4
je 0x14005d528
mov rax, qword [rsi + 0x20]
mov qword [rsp + 0xb8], rax
mov rax, qword [rsp + 0x28]
xor r11d, r11d
mov word [rsp + 0x120], r11w
mov rax, qword [rax + 0x20]
cmp byte [rax + 0x3f], 1
je 0x14005d588
mov rdx, qword [rsp + 0x3e8]
mov rcx, r12
call fcn.14005c870
mov ebx, eax
test ebx, ebx
je 0x14005d5aa
movzx r8d, word [rsp + 0x120]
test r8w, r8w
je 0x14005d8a0
test ebp, ebp
je 0x14005d5d0
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x70]
mov word [rsp + 0xe0], r8w
shl r8, 4
mov r9d, 0x30
call fcn.14019d850
xor ebp, ebp
mov rax, qword [rsp + 0x50]
add rsi, 0x38
cmp rsi, rax
jb 0x14005d3c0
mov r13, qword [rsp + 0x80]
mov r12, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x90]
mov rax, qword [r12 + 0x40]
mov ecx, 1
xor r8d, r8d
pxor xmm0, xmm0
mov word [r12 + 0x34], cx
mov qword [rax], rbp
mov dword [r12 + 0x30], 0x2000
mov word [r12 + 0x12], r8w
mov byte [r12 + 0x11], 0
mov qword [r12 + 0x28], 0
movups xmmword [r12 + 0x18], xmm0
test ebx, ebx
jne 0x14005d90b
movzx esi, word [rsp + 0xe0]
lea rdi, [rsp + 0xe0]
shl rsi, 4
add rsi, rdi
jmp 0x14005d517
movzx eax, word [rdi + 0x10]
mov rcx, r14
add rdi, 0x10
lea edx, [rax + 1]
movzx eax, word [rdi + 2]
movzx edx, dx
shl eax, 0x10
or eax, edx
mov rdx, r12
mov dword [r12 + 0x14], eax
mov rax, qword [rdi - 8]
mov qword [r12], rax
call fcn.1400297e0
test eax, eax
jne 0x14005d2fa
cmp rdi, rsi
jne 0x14005d4e0
jmp 0x14005d2ef
cmp dword [rsi + 0x1c], r15d
jne 0x14005d44e
mov rax, qword [rsp + 0x48]
mov rax, qword [rax]
mov byte [rsp + 0x1b0], 0x2c
mov dword [rsp + 0x1b4], 1
movq xmm0, rax
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x1a0]
movhps xmm0, qword [rsp + 0x48]
mov qword [rsp + 0x1c0], rsi
mov dword [rsp + 0x1bc], 1
movaps xmmword [rsp + 0x1a0], xmm0
jmp 0x14005d3ce
mov r8, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x3e8]
mov rcx, r12
call fcn.1400532a0
mov ebx, eax
test ebx, ebx
jne 0x14005d40f
mov r8, qword [rsp + 0x3f0]
mov rdx, qword [rsp + 0x3e8]
mov rcx, r12
call fcn.14005d220
mov ebx, eax
jmp 0x14005d40f
movzx r8d, word [rsp + 0xe0]
mov r9d, 0x30
lea rdx, [rsp + 0xe8]
lea rcx, [rsp + 0x168]
lea rbp, [rsp + 0x160]
mov rdi, r8
shl r8, 4
call fcn.14019d850
xor r9d, r9d
mov word [rsp + 0xe0], r9w
test di, di
je 0x14005d44c
movzx r10d, di
mov dword [rsp + 0xa0], r15d
mov rax, rbp
lea edx, [r10 - 1]
mov qword [rsp + 0x98], rsi
shl rdx, 4
mov dword [rsp + 0xa4], ebx
lea rdi, [rbp + rdx]
mov qword [rsp + 0x3e0], r14
lea rbp, [rsp + 0xe0]
mov qword [rsp + 0x78], rdi
lea rdi, [rsp + 0x128]
mov qword [rsp + 0xa8], r12
mov qword [rsp + 0x30], rdi
lea rdi, [rsp + 0x132]
mov qword [rsp + 0x38], rdi
lea rdi, [rsp + 0x130]
movsx r14d, word [rax + 0x12]
mov rsi, qword [rax + 8]
mov qword [rsp + 0x60], rax
xor ebx, ebx
movsx r13d, word [rax + 0x10]
lea ecx, [r14 + 0x31]
mov r12d, r14d
mov dword [rsp + 0x44], ecx
lea ecx, [r14 + 0x1f]
mov r15d, r13d
mov dword [rsp + 0x5c], ecx
lea ecx, [r13 + 0x31]
mov dword [rsp + 0x58], ecx
mov rax, qword [rsp + 0x38]
mov rdx, rbx
shl rdx, 4
movsx r9d, word [rax + rdx]
mov ecx, r9d
cmp r9w, r12w
jg 0x14005d7d0
lea ecx, [r9 + 0x31]
cmp ecx, r14d
jl 0x14005d800
lea ecx, [r9 + 0x1f]
cmp ecx, r14d
jge 0x14005d810
lea r9d, [r12 + 1]
movsx r9d, r9w
nop word cs:[rax + rax]
movsx r8d, word [rdi + rdx]
mov ecx, r8d
cmp r8w, r15w
jg 0x14005d7b0
lea ecx, [r8 + 0x31]
cmp ecx, r13d
jl 0x14005d7f0
lea ecx, [r8 + 0x1f]
cmp ecx, r13d
jge 0x14005d838
lea r8d, [r15 + 1]
movsx r8d, r8w
nop dword [rax]
mov rcx, qword [rsp + 0x30]
add rbx, 1
mov rax, qword [rcx + rdx]
mov rcx, rbp
or rax, rsi
mov rdx, rax
call fcn.14000a050
movzx ecx, word [rsp + 0x120]
cmp ecx, ebx
jg 0x14005d6b5
mov rax, qword [rsp + 0x60]
cmp qword [rsp + 0x78], rax
je 0x14005d77c
add rax, 0x10
test cx, cx
jne 0x14005d682
mov r15d, dword [rsp + 0xa0]
mov rsi, qword [rsp + 0x98]
mov ebx, dword [rsp + 0xa4]
mov r14, qword [rsp + 0x3e0]
mov r12, qword [rsp + 0xa8]
jmp 0x14005d44c
cmp dword [rsp + 0x58], r8d
jl 0x14005d738
lea r10d, [r13 + 0x1f]
cmp r10d, r8d
jge 0x14005d880
add ecx, 1
movsx r8d, cx
jmp 0x14005d738
cmp dword [rsp + 0x44], r9d
jl 0x14005d700
cmp dword [rsp + 0x5c], r9d
jge 0x14005d860
add ecx, 1
movsx r9d, cx
jmp 0x14005d700
mov r8d, r13d
jmp 0x14005d738
mov r9d, r14d
jmp 0x14005d700
mov ecx, r14d
lea rax, str._n_n_t_t_b_b_a_a_a
sub ecx, r9d
movsxd rcx, ecx
movzx r9d, byte [rax + rcx]
add r9d, r12d
movsx r9d, r9w
jmp 0x14005d700
mov ecx, r13d
lea rax, str._n_n_t_t_b_b_a_a_a
sub ecx, r8d
movsxd rcx, ecx
movzx r8d, byte [rax + rcx]
add r8d, r15d
movsx r8d, r8w
jmp 0x14005d738
sub r9d, r14d
lea rax, str._n_n_t_t_b_b_a_a_a
movsxd r9, r9d
movzx r9d, byte [rax + r9]
add r9d, ecx
movsx r9d, r9w
jmp 0x14005d700
sub r8d, r13d
lea rax, str._n_n_t_t_b_b_a_a_a
movsxd r8, r8d
movzx r8d, byte [rax + r8]
add r8d, ecx
movsx r8d, r8w
jmp 0x14005d738
xor r10d, r10d
mov r13, qword [rsp + 0x80]
mov r12, qword [rsp + 0x88]
mov word [rsp + 0xe0], r10w
mov rbp, qword [rsp + 0x90]
jmp 0x14005d478
mov eax, 1
xor edx, edx
pxor xmm0, xmm0
mov word [r12 + 0x34], ax
mov rax, qword [r12 + 0x40]
mov qword [rax], rbp
mov dword [r12 + 0x30], 0x2000
mov word [r12 + 0x12], dx
mov byte [r12 + 0x11], 0
mov qword [r12 + 0x28], 0
movups xmmword [r12 + 0x18], xmm0
jmp 0x14005d4be
mov eax, ebx
jmp 0x14005d2fa