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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xf8
mov ebp, r8d
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x14027c048]
xor rax, rsp
mov qword [rsp + 0xf0], rax
cmp qword [rcx + 0x430], 0
setne al
cmp qword [rcx + 0x460], 0
setne bl
and bl, al
jne 0x14013b0d8
mov rax, qword [rsi + 0x468]
cmp rax, qword [rsi + 0x470]
jne 0x14013b129
mov eax, dword [rsi + 0x510]
test rax, rax
je 0x14013b129
mov rcx, qword [rsi + 0x508]
shl rax, 5
cmp byte [rcx + rax - 0x14], 0
je 0x14013b129
add rcx, rax
mov eax, dword [rcx - 0x18]
mov rbx, qword [rsi + 0x30]
mov dword [rbx + 0x148], eax
mov dword [rbx + 0x14c], 0x3eb
cmp qword [rbx + 0x140], 0x10
jb 0x14013b220
mov rax, qword [rbx + 0x128]
jmp 0x14013b227
mov rcx, qword [rsi + 0x438]
test rcx, rcx
je 0x14013b599
cmp byte [rcx + 0x20], 0
jne 0x14013b145
mov rax, qword [rcx + 0x28]
jmp 0x14013b147
xor eax, eax
mov qword [rsp + 0xa8], rax
test rax, rax
je 0x14013b599
lea rdx, [rsp + 0xb0]
call fcn.1400fcce0
mov rdx, qword [rsp + 0xb0]
test rdx, rdx
je 0x14013b599
nop word cs:[rax + rax]
mov rax, qword [rdx + 8]
mov rdx, rax
and rdx, 0xfffffffffffffffc
test al, 2
je 0x14013b194
test rdx, rdx
jne 0x14013b180
test rdx, rdx
je 0x14013b599
mov rcx, qword [rsi + 0x68]
mov r14, qword [rsp + 0xa8]
call fcn.140184e70
mov qword [rax + 8], r14
mov r8, qword [rsp + 0xa8]
test byte [r8 + 3], 2
je 0x14013b3c2
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.14012d930
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rsp + 0xc0]
cmp rcx, 7
ja 0x14013b1f4
test rax, rax
je 0x14013b3c2
test rax, rax
je 0x14013b399
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rcx + rax*8 - 8]
mov rax, qword [rax + 0x10]
test rax, rax
je 0x14013b3c2
or byte [rax + 0x25], 4
jmp 0x14013b3c2
lea rax, [rbx + 0x128]
mov qword [rbx + 0x138], 0
mov byte [rax], 0
mov byte [rbx + 0x150], 0
mov dword [rbx + 0x2f8], 0
mov r14d, dword [rbx + 0x368]
test r14, r14
je 0x14013b2c1
mov r15, qword [rbx + 0x360]
shl r14, 6
jmp 0x14013b283
call fcn.1401a5ac8
mov qword [r15 + r14 - 0x18], 0
mov qword [r15 + r14 - 0x10], 0xf
mov byte [r15 + r14 - 0x28], 0
add r14, 0xffffffffffffffc0
je 0x14013b2c1
mov rax, qword [r15 + r14 - 0x10]
cmp rax, 0x10
jb 0x14013b265
mov rcx, qword [r15 + r14 - 0x28]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14013b260
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14013c592
add rax, 0x28
mov rdx, rax
mov rcx, r8
jmp 0x14013b260
mov dword [rbx + 0x368], 0
mov rcx, rbx
xor edx, edx
call fcn.1400332c0
mov bl, 1
mov rcx, rsi
mov dl, 1
call fcn.14013c5a0
mov r14, rax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov dword [rdi + 0x10], 0
mov rax, qword [rsi + 0x430]
mov r15, qword [rax + 0x70]
mov rcx, qword [rax + 0x78]
cmp rcx, r15
je 0x14013b338
movzx edx, byte [rcx - 1]
cmp edx, 0xd
je 0x14013b313
cmp edx, 0xa
jne 0x14013b338
lea r8, [rcx - 1]
cmp r8, r15
je 0x14013b33b
movzx r9d, byte [rcx - 2]
cmp r9d, 0xd
je 0x14013b32d
cmp r9d, 0xa
jne 0x14013b394
add rcx, 0xfffffffffffffffe
cmp r9b, dl
cmove rcx, r8
mov r15, rcx
mov qword [rax + 0x98], r15
mov rsi, qword [rsi + 0x430]
mov eax, dword [rsi + 0x98]
mov r9d, r15d
sub r9d, eax
mov dword [rdi + 4], r9d
mov r8, qword [rsi + 0x98]
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.1400ec040
mov eax, dword [rsp + 0xb0]
mov dword [rdi], eax
mov word [rdi + 0x10], 0x1a2
mov qword [rsi + 0x98], r15
mov eax, dword [rdi]
mov dword [rdi + 4], eax
mov qword [rdi + 8], r14
jmp 0x14013c54c
mov r15, r8
jmp 0x14013b33b
and rcx, 0xfffffffffffffff8
je 0x14013b3c2
lea rdx, [rsp + 0x60]
call fcn.140188db0
mov rax, qword [rsp + 0x60]
test rax, rax
jne 0x14013b20a
xor eax, eax
test rax, rax
jne 0x14013b217
mov rax, qword [rsi + 0x438]
mov rax, qword [rax + 0x30]
mov qword [rsp + 0xa0], rax
test rax, rax
je 0x14013b599
mov r8, qword [rsp + 0xa8]
test dword [r8], 0x2000000
jne 0x14013b58b
cmp rax, r8
je 0x14013b599
mov rcx, qword [rsi + 0x430]
cmp byte [rcx + 0xa4], 0
je 0x14013b599
mov rcx, qword [r8 + 0x10]
mov r14d, dword [rcx]
add rcx, 0x10
mov qword [rsp + 0x90], rcx
mov qword [rsp + 0x98], r14
mov rax, qword [rax + 0x10]
mov ecx, dword [rax]
add rax, 0x10
cmp r14, rcx
cmovbe r14, rcx
shr r14, 1
mov qword [rsp + 0x80], rax
mov qword [rsp + 0x88], rcx
lea rcx, [rsp + 0x90]
lea rdx, [rsp + 0x80]
mov r8b, 1
mov r9d, r14d
call fcn.1400260c0
mov eax, eax
cmp r14, rax
jb 0x14013b599
mov rax, qword [rsi + 0x438]
mov r8d, dword [rax + 0x38]
lea r14, [rsp + 0xb0]
mov rcx, rsi
mov rdx, r14
mov r9d, 0x498
call fcn.1401396e0
mov rax, qword [rsi + 0x438]
mov eax, dword [rax + 0x38]
mov dword [rsp + 0x60], eax
lea rdx, [rsp + 0x60]
mov rcx, r14
call fcn.14013cae0
lea r15, [rsp + 0xa8]
mov rcx, rax
mov rdx, r15
call fcn.14013cb70
mov rcx, r14
call fcn.14003c0b0
mov rax, qword [rsi + 0x438]
mov r8d, dword [rax + 0x3c]
lea r14, [rsp + 0x60]
mov rcx, rsi
mov rdx, r14
mov r9d, 0x444
call fcn.1401396e0
mov rax, qword [rsi + 0x438]
mov eax, dword [rax + 0x3c]
mov dword [rsp + 0x58], eax
lea rdx, [rsp + 0x58]
mov rcx, r14
call fcn.14013cae0
lea rdx, [rsp + 0xa0]
mov rcx, rax
call fcn.14013cb70
mov rcx, rax
mov rdx, r15
call fcn.14013cb70
mov r15, rax
mov rax, qword [rsp + 0xa8]
mov rax, qword [rax + 0x10]
mov ecx, dword [rax]
add rax, 0x10
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rcx
mov rax, qword [rsi + 0x438]
mov eax, dword [rax + 0x3c]
mov rdx, rax
shl rdx, 0x20
or rdx, rax
lea r12, [rsp + 0xb0]
lea r8, [rsp + 0x48]
mov rcx, r12
call fcn.14013cbc0
mov rcx, r15
mov rdx, r12
call fcn.1400efd20
mov rcx, r12
call fcn.140098ac0
mov rcx, r14
call fcn.14003c0b0
jmp 0x14013b599
mov rax, qword [rsi + 0x38]
test byte [rax + 0x11], 1
jne 0x14013bf88
mov eax, dword [rsi + 0x390]
test eax, eax
je 0x14013b6cb
test bpl, bpl
jne 0x14013b6cb
mov rcx, qword [rsi + 0x430]
test rcx, rcx
je 0x14013b5c9
cmp byte [rcx + 0x91], 0
jne 0x14013b6cb
mov r14, qword [rsi + 0x30]
mov dword [r14 + 0x148], eax
mov dword [r14 + 0x14c], 0x3c0
cmp qword [r14 + 0x140], 0x10
jb 0x14013b5f2
mov rax, qword [r14 + 0x128]
jmp 0x14013b5f9
lea rax, [r14 + 0x128]
mov qword [r14 + 0x138], 0
mov byte [rax], 0
mov byte [r14 + 0x150], 0
mov dword [r14 + 0x2f8], 0
mov r15d, dword [r14 + 0x368]
test r15, r15
je 0x14013b6a1
mov r12, qword [r14 + 0x360]
shl r15, 6
jmp 0x14013b663
call fcn.1401a5ac8
mov qword [r12 + r15 - 0x18], 0
mov qword [r12 + r15 - 0x10], 0xf
mov byte [r12 + r15 - 0x28], 0
add r15, 0xffffffffffffffc0
je 0x14013b6a1
mov rax, qword [r12 + r15 - 0x10]
cmp rax, 0x10
jb 0x14013b645
mov rcx, qword [r12 + r15 - 0x28]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14013b640
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14013c592
add rax, 0x28
mov rdx, rax
mov rcx, r8
jmp 0x14013b640
mov dword [r14 + 0x368], 0
mov rcx, r14
xor edx, edx
call fcn.1400332c0
mov qword [rsi + 0x388], 0
mov dword [rsi + 0x390], 0
mov eax, dword [rsi + 0x398]
test eax, eax
je 0x14013b864
test bpl, bpl
jne 0x14013b864
mov rcx, qword [rsi + 0x430]
test rcx, rcx
je 0x14013b706
cmp byte [rcx + 0x91], 0
jne 0x14013b864
cmp dword [rsi + 0x428], 1
je 0x14013b71d
jmp 0x14013b731
cmp dword [rsi + 0x428], 1
jne 0x14013b731
cmp qword [rsi + 0x438], 0
je 0x14013b818
mov rcx, qword [rsi + 0x468]
cmp rcx, qword [rsi + 0x470]
je 0x14013b854
mov r14, qword [rsi + 0x30]
mov dword [r14 + 0x148], eax
mov dword [r14 + 0x14c], 0x3c1
cmp qword [r14 + 0x140], 0x10
jb 0x14013b75a
mov rax, qword [r14 + 0x128]
jmp 0x14013b761
lea rax, [r14 + 0x128]
mov qword [r14 + 0x138], 0
mov byte [rax], 0
mov byte [r14 + 0x150], 0
mov dword [r14 + 0x2f8], 0
mov r15d, dword [r14 + 0x368]
test r15, r15
je 0x14013b801
mov r12, qword [r14 + 0x360]
shl r15, 6
jmp 0x14013b7c3
call fcn.1401a5ac8
mov qword [r12 + r15 - 0x18], 0
mov qword [r12 + r15 - 0x10], 0xf
mov byte [r12 + r15 - 0x28], 0
add r15, 0xffffffffffffffc0
je 0x14013b801
mov rax, qword [r12 + r15 - 0x10]
cmp rax, 0x10
jb 0x14013b7a5
mov rcx, qword [r12 + r15 - 0x28]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14013b7a0
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14013c592
add rax, 0x28
mov rdx, rax
mov rcx, r8
jmp 0x14013b7a0
mov dword [r14 + 0x368], 0
mov rcx, r14
xor edx, edx
call fcn.1400332c0
jmp 0x14013b85a
mov rcx, qword [rsi + 0x468]
mov rdx, qword [rsi + 0x470]
jmp 0x14013b833
cmp qword [rcx + 0x18], 0
jne 0x14013b731
add rcx, 0x38
cmp rcx, rdx
je 0x14013b854
mov r8, qword [rcx + 0x10]
test r8, r8
je 0x14013b828
cmp byte [r8 + 0x91], 0
jne 0x14013b833
jmp 0x14013b731
mov dword [rsi + 0x39c], eax
mov dword [rsi + 0x398], 0
mov r13, qword [rsi + 0x468]
mov r12, qword [rsi + 0x470]
cmp r13, r12
je 0x14013b8c4
cmp qword [rsi + 0x300], 0
je 0x14013bedb
mov rax, qword [rsi + 0x438]
test rax, rax
je 0x14013bedb
mov rcx, qword [rsi + 0x58]
mov edx, dword [rax + 0x10]
mov byte [rsp + 0xb0], 0
lea eax, [rdx + 1]
cmp eax, 2
jb 0x14013bfef
test edx, edx
js 0x14013be83
add rcx, 0xc0
jmp 0x14013beb0
mov rax, qword [rsi + 0x430]
mov r14, qword [rax + 0x70]
mov rax, qword [rax + 0x78]
cmp rax, r14
je 0x14013b90f
movzx ecx, byte [rax - 1]
cmp ecx, 0xd
je 0x14013b8e6
cmp ecx, 0xa
jne 0x14013b90f
lea rdx, [rax - 1]
cmp rdx, r14
je 0x14013b912
movzx r8d, byte [rax - 2]
cmp r8d, 0xd
je 0x14013b904
cmp r8d, 0xa
jne 0x14013be7b
add rax, 0xfffffffffffffffe
cmp r8b, cl
cmove rax, rdx
mov r14, rax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov dword [rdi + 0x10], 0
mov rax, qword [rsi + 0x430]
mov qword [rax + 0x98], r14
mov rbx, qword [rsi + 0x430]
mov eax, dword [rbx + 0x98]
mov r9d, r14d
sub r9d, eax
mov dword [rdi + 4], r9d
mov r8, qword [rbx + 0x98]
lea rdx, [rsp + 0xb0]
mov rcx, rbx
call fcn.1400ec040
mov eax, dword [rsp + 0xb0]
mov dword [rdi], eax
mov word [rdi + 0x10], 1
mov qword [rbx + 0x98], r14
cmp qword [rsi + 0x300], 0
je 0x14013b992
mov rax, qword [rsi + 0x430]
mov eax, dword [rax + 0x80]
cmp eax, dword [rsi + 0x310]
jne 0x14013b992
dec dword [rdi]
mov rcx, rsi
call fcn.14012c0b0
cmp r13, r12
jne 0x14013bbbc
test al, al
je 0x14013bbbc
mov rax, qword [rsi + 0x430]
mov eax, dword [rax + 0x80]
mov rdi, qword [rsi + 0x30]
mov dword [rdi + 0x148], eax
mov dword [rdi + 0x14c], 0x3f5
cmp qword [rdi + 0x140], 0x10
jb 0x14013b9df
mov rax, qword [rdi + 0x128]
jmp 0x14013b9e6
lea rax, [rdi + 0x128]
mov qword [rdi + 0x138], 0
mov byte [rax], 0
lea rax, [rdi + 0x150]
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], 0
mov qword [rsp + 0xc0], rdi
mov word [rsp + 0xc8], 1
mov byte [rdi + 0x150], 0
mov dword [rdi + 0x2f8], 0
mov ebx, dword [rdi + 0x368]
test rbx, rbx
je 0x14013bab1
mov r14, qword [rdi + 0x360]
shl rbx, 6
jmp 0x14013ba73
call fcn.1401a5ac8
mov qword [r14 + rbx - 0x18], 0
mov qword [r14 + rbx - 0x10], 0xf
mov byte [r14 + rbx - 0x28], 0
add rbx, 0xffffffffffffffc0
je 0x14013bab1
mov rax, qword [r14 + rbx - 0x10]
cmp rax, 0x10
jb 0x14013ba55
mov rcx, qword [r14 + rbx - 0x28]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14013ba50
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x14013c592
add rax, 0x28
mov rdx, rax
mov rcx, r8
jmp 0x14013ba50
mov dword [rdi + 0x368], 0
mov rcx, qword [rsi + 0x20]
mov rax, qword [rcx + 0x60]
cmp qword [rcx + 0x68], 0x10
jb 0x14013bad0
mov rcx, qword [rcx + 0x50]
jmp 0x14013bad4
add rcx, 0x50
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0xb0]
lea rdx, [rsp + 0x60]
call fcn.140031be0
mov rax, qword [rsp + 0xb0]
test rax, rax
jne 0x14013bb12
mov rcx, qword [rsp + 0xb8]
call fcn.140035810
mov qword [rsp + 0xb0], rax
movzx ecx, byte [rax]
mov byte [rax + rcx + 1], 2
mov rax, qword [rsp + 0xb0]
movzx ecx, byte [rax]
lea edx, [rcx + 1]
mov byte [rax], dl
mov qword [rax + rcx*8 + 0x10], 0
cmp byte [rsp + 0xc8], 0
je 0x14013bb68
mov rcx, qword [rsp + 0xc0]
movzx edx, byte [rsp + 0xc9]
call fcn.1400332c0
mov qword [rsp + 0xc0], 0
mov word [rsp + 0xc8], 0
mov rdi, qword [rsp + 0xb0]
test rdi, rdi
je 0x14013bbbc
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x14013bbbc
cmp rdi, rax
jb 0x14013bbac
lea rcx, [rax + 0x3a00]
cmp rcx, rdi
jb 0x14013bbac
mov ecx, dword [rax + 0x3a80]
lea edx, [rcx + 1]
mov dword [rax + 0x3a80], edx
mov qword [rax + rcx*8 + 0x3a00], rdi
jmp 0x14013bbbc
mov rcx, rdi
call fcn.140032640
mov rcx, rdi
call fcn.1401a5ac0
mov rax, qword [rsi + 0x38]
test byte [rax + 0xb4], 1
jne 0x14013bbef
mov rcx, qword [rsi + 0x430]
mov qword [rsi + 0x430], 0
test rcx, rcx
je 0x14013bbef
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 8]
mov rax, qword [rsi + 0x38]
test byte [rax + 0xb4], 1
jne 0x14013bc03
mov qword [rsi + 0x438], 0
cmp dword [rsi + 0x2f0], 0
je 0x14013bcb4
mov rcx, rsi
call fcn.14012bf00
mov bl, 1
test rax, rax
je 0x14013c54c
lea r14, [rsp + 0xc0]
mov qword [rsp + 0xb0], r14
movabs rcx, 0x400000000
mov qword [rsp + 0xb8], rcx
lea rdx, [rsp + 0xb0]
mov rcx, rax
call fcn.14013cd80
mov rdi, qword [rsp + 0xb0]
mov r15d, dword [rsp + 0xb8]
test r15, r15
je 0x14013bc9d
shl r15, 3
xor r12d, r12d
nop word cs:[rax + rax]
mov rdx, qword [rdi + r12]
mov rcx, rsi
call fcn.14013a200
add r12, 8
cmp r15, r12
jne 0x14013bc80
mov rdi, qword [rsp + 0xb0]
cmp rdi, r14
je 0x14013c54c
mov rcx, rdi
call qword [0x140276c98]
jmp 0x14013c54c
mov ecx, dword [rsi + 0x7f0]
lea rax, [rsi + 0x7f8]
cmp ecx, 1
ja 0x14013bced
test ecx, ecx
mov rdx, qword [rsi + 0x7f8]
mov r9, rax
cmove r9, rdx
mov r8d, dword [rsi + 0x800]
mov r10d, 0x20
cmove r10d, r8d
lea rbx, [r9 + r10*4]
jmp 0x14013bd30
and ecx, 1
mov rdx, qword [rsi + 0x7f8]
mov r14, rax
cmove r14, rdx
mov r8d, dword [rsi + 0x800]
mov r9d, 0x20
cmove r9d, r8d
lea rbx, [r14 + r9*4]
test r9d, r9d
je 0x14013bd33
lea r9, [r9*4]
cmp dword [r14], 0xfffffffe
jb 0x14013bd33
add r14, 4
add r9, 0xfffffffffffffffc
jne 0x14013bd20
mov r14, rbx
test ecx, ecx
cmove rax, rdx
mov ecx, 0x20
cmove ecx, r8d
lea r15, [rax + rcx*4]
cmp r14, r15
jne 0x14013bd5f
jmp 0x14013bc10
mov rax, r14
mov r14, rax
cmp rax, r15
je 0x14013bc10
mov eax, dword [r14]
mov rdi, qword [rsi + 0x30]
mov dword [rdi + 0x148], eax
mov dword [rdi + 0x14c], 0x463
cmp qword [rdi + 0x140], 0x10
jb 0x14013bd90
mov rax, qword [rdi + 0x128]
jmp 0x14013bd97
lea rax, [rdi + 0x128]
mov qword [rdi + 0x138], 0
mov byte [rax], 0
mov byte [rdi + 0x150], 0
mov dword [rdi + 0x2f8], 0
mov r12d, dword [rdi + 0x368]
test r12, r12
je 0x14013be30
mov r13, qword [rdi + 0x360]
shl r12, 6
jmp 0x14013bdfd
add rax, 0x28
mov rdx, rax
mov rcx, r8
call fcn.1401a5ac8
mov qword [r13 + r12 - 0x18], 0
mov qword [r13 + r12 - 0x10], 0xf
mov byte [r13 + r12 - 0x28], 0
add r12, 0xffffffffffffffc0
je 0x14013be30
mov rax, qword [r13 + r12 - 0x10]
cmp rax, 0x10
jb 0x14013bddf
mov rcx, qword [r13 + r12 - 0x28]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x14013bdda
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jb 0x14013bdd0
jmp 0x14013c592
mov dword [rdi + 0x368], 0
mov rcx, rdi
xor edx, edx
call fcn.1400332c0
add r14, 4
mov rax, rbx
cmp r14, rbx
je 0x14013bd53
nop word cs:[rax + rax]
cmp dword [r14], 0xfffffffe
jb 0x14013bd50
add r14, 4
cmp r14, rbx
jne 0x14013be60
mov rax, rbx
jmp 0x14013bd53
mov r14, rdx
jmp 0x14013b912
mov eax, 0xfffffffe
sub rax, rdx
mov edx, eax
mov r8d, eax
shr r8d, 6
mov r9, qword [rcx + 0xe8]
mov r8, qword [r9 + r8*8]
bt r8, rax
jae 0x14013bfd4
add rcx, 0xd0
mov rax, qword [rcx]
test rax, rax
je 0x14013bfef
mov ecx, edx
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
mov ecx, dword [rax]
xor eax, eax
test ecx, ecx
cmovg eax, ecx
cmp eax, dword [rsi + 0x310]
je 0x14013bffd
xor eax, eax
mov ecx, 0
test bpl, bpl
jne 0x14013c16a
mov rax, qword [rsi + 0x438]
test rax, rax
je 0x14013c166
mov rcx, qword [rsi + 0x58]
mov edx, dword [rax + 0x10]
mov byte [rsp + 0xb0], 0
lea eax, [rdx + 1]
cmp eax, 2
jb 0x14013c0a9
test edx, edx
js 0x14013bf23
add rcx, 0xc0
jmp 0x14013bf50
mov eax, 0xfffffffe
sub rax, rdx
mov edx, eax
mov r8d, eax
shr r8d, 6
mov r9, qword [rcx + 0xe8]
mov r8, qword [r9 + r8*8]
bt r8, rax
jae 0x14013c08e
add rcx, 0xd0
mov rax, qword [rcx]
test rax, rax
je 0x14013c0a9
mov ecx, edx
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
cmp dword [rax], 0
js 0x14013c0a9
cmp dword [rax + 8], 0
je 0x14013c0a9
mov rdx, qword [rsi + 0x438]
mov eax, dword [rdx + 0x10]
jmp 0x14013c0c7
lea rdx, [rsp + 0xb0]
mov rcx, rsi
call fcn.14012d930
cmp qword [rsp + 0xb0], 7
ja 0x14013b599
cmp qword [rsp + 0xc0], 0
jne 0x14013b599
mov rax, qword [rsp + 0xa0]
mov r8, qword [rsp + 0xa8]
cmp rax, r8
jne 0x14013b3fc
jmp 0x14013b599
lea r8, [rsp + 0xb0]
call fcn.14003d2a0
cmp byte [rsp + 0xb0], 0
je 0x14013bec6
xor eax, eax
cmp eax, dword [rsi + 0x310]
jne 0x14013bedb
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov dword [rdi + 0x10], 0
mov rbx, qword [rsi + 0x430]
mov r14, qword [rbx + 0x78]
mov eax, dword [rbx + 0x98]
mov r9d, r14d
sub r9d, eax
mov dword [rdi + 4], r9d
mov r8, qword [rbx + 0x98]
lea rdx, [rsp + 0xb0]
mov rcx, rbx
call fcn.1400ec040
mov eax, dword [rsp + 0xb0]
mov dword [rdi], eax
mov word [rdi + 0x10], 1
mov qword [rbx + 0x98], r14
mov rcx, qword [rsi + 0x430]
mov qword [rsi + 0x430], 0
test rcx, rcx
je 0x14013c074
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 8]
mov qword [rsi + 0x438], 0
mov rcx, rsi
call fcn.14012bc30
mov bl, 1
jmp 0x14013c54c
lea r8, [rsp + 0xb0]
call fcn.14003d2a0
cmp byte [rsp + 0xb0], 0
je 0x14013bf66
mov eax, dword [rsi + 0x910]
test eax, eax
je 0x14013c14c
mov rdx, qword [rsi + 0x438]
cmp dword [rdx + 0x10], eax
jne 0x14013c158
mov rcx, qword [rsi + 0x58]
mov r14d, dword [rcx + 0xc8]
sub r14d, dword [rdx + 0x14]
mov byte [rsp + 0xb0], 0
lea edx, [rax + 1]
cmp edx, 2
jb 0x14013c14c
test eax, eax
js 0x14013c0f5
add rcx, 0xc0
mov edx, eax
jmp 0x14013c11d
mov edx, 0xfffffffe
sub edx, eax
mov eax, edx
shr eax, 6
mov r8, qword [rcx + 0xe8]
mov rax, qword [r8 + rax*8]
bt rax, rdx
jae 0x14013c572
add rcx, 0xd0
mov rax, qword [rcx]
test rax, rax
je 0x14013c14c
mov ecx, edx
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
cmp dword [rax], 0
js 0x14013c14c
inc r14d
and r14d, 0x7fffffff
mov ecx, 0x80000000
and ecx, dword [rax + 0xc]
or ecx, r14d
mov dword [rax + 0xc], ecx
mov rdx, qword [rsi + 0x438]
test rdx, rdx
je 0x14013c166
mov eax, dword [rdx + 0x10]
cmp dword [rsi + 0x910], eax
sete cl
jmp 0x14013c16a
xor eax, eax
xor ecx, ecx
mov dword [rsp + 0x44], ecx
mov dword [rsp + 0x40], eax
test bl, bl
je 0x14013c259
mov byte [rsp + 0x3c], bl
mov rbx, r12
mov r12d, ebp
mov rbp, r13
mov rcx, rsi
xor edx, edx
call fcn.14013c5a0
mov r14, rax
mov rax, qword [rsi + 0x430]
mov r13, qword [rax + 0x70]
mov rax, qword [rax + 0x78]
cmp rax, r13
je 0x14013c1df
movzx ecx, byte [rax - 1]
cmp ecx, 0xd
je 0x14013c1b6
cmp ecx, 0xa
jne 0x14013c1df
lea rdx, [rax - 1]
cmp rdx, r13
je 0x14013c1e2
movzx r8d, byte [rax - 2]
cmp r8d, 0xd
je 0x14013c1d4
cmp r8d, 0xa
jne 0x14013c316
add rax, 0xfffffffffffffffe
cmp r8b, cl
cmove rax, rdx
mov r13, rax
xorps xmm0, xmm0
movups xmmword [rdi], xmm0
mov dword [rdi + 0x10], 0
mov rax, qword [rsi + 0x430]
mov qword [rax + 0x98], r13
mov r15, qword [rsi + 0x430]
mov eax, dword [r15 + 0x98]
mov r9d, r13d
sub r9d, eax
mov dword [rdi + 4], r9d
mov r8, qword [r15 + 0x98]
lea rdx, [rsp + 0xb0]
mov rcx, r15
call fcn.1400ec040
mov eax, dword [rsp + 0xb0]
mov dword [rdi], eax
mov word [rdi + 0x10], 0x1a2
mov qword [r15 + 0x98], r13
mov eax, dword [rdi]
mov dword [rdi + 4], eax
mov qword [rdi + 8], r14
mov r13, rbp
mov ebp, r12d
mov r12, rbx
movzx ebx, byte [rsp + 0x3c]
cmp qword [rsi + 0x438], 0
je 0x14013c29e
mov rcx, rsi
call fcn.14012c0b0
test al, al
je 0x14013c29e
mov rcx, qword [rsi + 0x58]
mov rax, qword [rsi + 0x438]
mov edx, dword [rax + 0x10]
mov byte [rsp + 0xb0], 0
lea eax, [rdx + 1]
cmp eax, 2
jb 0x14013c335
test edx, edx
js 0x14013c2a6
add rcx, 0xc0
jmp 0x14013c2cf
xor r14d, r14d
jmp 0x14013c342
mov eax, 0xfffffffe
sub rax, rdx
mov edx, eax
mov r8d, eax
shr r8d, 6
mov r9, qword [rcx + 0xe8]
mov r8, qword [r9 + r8*8]
bt r8, rax
jae 0x14013c31e
add rcx, 0xd0
mov rax, qword [rcx]
test rax, rax
je 0x14013c335
mov ecx, edx
lea rcx, [rcx + rcx*2]
lea rax, [rax + rcx*8]
cmp dword [rax], 0
js 0x14013c335
mov rax, qword [rax + 0x10]
and rax, 0xfffffffffffffff8
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x14013c335
nop word [rax + rax]
mov rax, qword [rdx + 8]
mov rdx, rax
and rdx, 0xfffffffffffffffc
test al, 2
je 0x14013c337
test rdx, rdx
jne 0x14013c300
jmp 0x14013c337
mov r13, rdx
jmp 0x14013c1e2
lea r8, [rsp + 0xb0]
call fcn.14003d2a0
cmp byte [rsp + 0xb0], 0
je 0x14013c2e1
xor edx, edx
mov rcx, rsi
call fcn.14012bfc0
mov r14d, eax
mov r15, qword [rsi + 0x450]
test r15, r15
je 0x14013c3a8
lea rax, [rsi + 0x450]
mov ecx, dword [rsi + 0x91c]
cmp rcx, 8
jne 0x14013c36a
mov qword [rax], 0
jmp 0x14013c398
lea edx, [rcx + 1]
mov dword [rsi + 0x91c], edx
lea rcx, [rsi + rcx*8]
add rcx, 0x920
cmp rcx, rax
je 0x14013c3a8
mov qword [rax], 0
mov rax, qword [rcx]
mov qword [rcx], r15
mov r15, rax
test rax, rax
je 0x14013c3a8
mov rcx, r15
call fcn.140161a60
mov rcx, r15
call fcn.1401a5ac0
mov rcx, rsi
call fcn.14013cf80
mov rcx, qword [rsi + 0x450]
test rcx, rcx
je 0x14013c3c6
mov rdx, rdi
call fcn.140164560
jmp 0x14013c3da
mov rcx, qword [rsi + 0x430]
test rcx, rcx
je 0x14013c3da
mov rdx, rdi
call fcn.1400f54a0
cmp qword [rsi + 0x480], 0
je 0x14013c4a1
test bpl, bpl
jne 0x14013c4a1
mov rcx, qword [rsi + 0x438]
test rcx, rcx
je 0x14013c4a1
mov rax, qword [rcx]
lea rdx, [rsp + 0xb0]
call qword [rax + 0x18]
mov rcx, qword [rsi + 0x58]
mov edx, dword [rsp + 0xb0]
call fcn.140041610
mov r15d, eax
mov rcx, qword [rsi + 0x480]
mov edx, dword [rsp + 0xb0]
mov rax, qword [rcx]
mov dword [rsp + 0x3c], r14d
mov r14, rdi
mov edi, ebx
mov rbx, r12
mov r12d, ebp
mov rbp, r13
mov r13d, dword [rsp + 0x40]
mov dword [rsp + 0x20], r13d
mov r8d, 1
mov r9d, r15d
call qword [rax + 8]
mov rax, qword [rsi + 0x438]
mov rcx, qword [rsi + 0x480]
mov r8d, dword [rsp + 0xb0]
mov edx, dword [rax + 0x10]
mov rax, qword [rcx]
mov dword [rsp + 0x28], r8d
mov dword [rsp + 0x20], r13d
mov r13, rbp
mov ebp, r12d
mov r12, rbx
mov ebx, edi
mov rdi, r14
mov r14d, dword [rsp + 0x3c]
mov r8d, 1
mov r9d, r15d
call qword [rax + 0x10]
cmp byte [rsp + 0x44], 0
je 0x14013c4c0
mov rcx, rsi
call fcn.14012cdb0
mov eax, dword [rsi + 0x39c]
test eax, eax
je 0x14013c4c0
mov dword [rsi + 0x398], eax
test bpl, bpl
jne 0x14013c54c
mov rcx, qword [rsi + 0x438]
test rcx, rcx
je 0x14013c54c
xor r14b, 1
jne 0x14013c54c
mov rax, qword [rsi + 0x430]
test rax, rax
je 0x14013c529
cmp byte [rax + 0x91], 0
je 0x14013c529
mov rdx, qword [rsi + 0x468]
mov r8, qword [rsi + 0x470]
jmp 0x14013c507
cmp qword [rdx + 0x18], 0
jne 0x14013c53d
add rdx, 0x38
cmp rdx, r8
je 0x14013b8cb
mov r9, qword [rdx + 0x10]
test r9, r9
je 0x14013c500
cmp byte [r9 + 0x91], 0
jne 0x14013c507
jmp 0x14013c53d
mov rdx, qword [rsi + 0x468]
cmp rdx, qword [rsi + 0x470]
je 0x14013b8cb
mov ecx, dword [rcx + 0x10]
cmp ecx, dword [rsi + 0x910]
je 0x14013b8cb
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.1401a5de0
mov eax, ebx
add rsp, 0xf8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
lea r8, [rsp + 0xb0]
call fcn.14003d2a0
cmp byte [rsp + 0xb0], 0
jne 0x14013c14c
jmp 0x14013c12f
call qword [0x140276bc8]
int3