Function at 0x1400a53f0
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, 0x158
movaps xmmword [rsp + 0x140], xmm7
movaps xmmword [rsp + 0x130], xmm6
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1401f5028]
xor rax, rsp
mov qword [rsp + 0x128], rax
mov rax, qword [rcx]
mov rcx, qword [rax]
call fcn.140172350
or byte [rsi + 0x10], 8
xor al, 1
mov qword [rsp + 0x78], rsi
mov byte [rsi + 0xa8], al
mov rcx, qword [rdi]
call fcn.140170ff0
mov qword [rsp + 0x80], rax
test rax, rax
mov qword [rsp + 0xa0], rdi
je 0x1400a5fa7
mov rax, qword [rsp + 0x78]
add rax, 0x18
mov qword [rsp + 0xa8], rax
movaps xmm6, xmmword [0x1401c8a80]
xorps xmm7, xmm7
mov rax, qword [rdi]
mov qword [rsp + 0x88], rax
mov rbp, qword [rsp + 0x78]
mov rax, qword [rbp + 0x28]
test rax, rax
jne 0x1400a54e8
mov edx, dword [rbp + 0x24]
movabs rdi, 0xaaaaaaaaaaaaaaab
inc edx
mov rcx, qword [rsp + 0xa8]
call fcn.140015c60
mov rbp, qword [rsp + 0x78]
mov rax, qword [rbp + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [rbp + 0x18]
call fcn.14016d7e0
mov r13, rax
mov rax, qword [rbp + 0x28]
movsxd rcx, dword [rbp + 0x20]
lea edx, [rcx + 1]
mov dword [rbp + 0x20], edx
mov qword [rax + rcx*8 + 8], r13
jmp 0x1400a550b
movsxd rcx, dword [rbp + 0x20]
mov edx, dword [rax]
cmp ecx, edx
movabs rdi, 0xaaaaaaaaaaaaaaab
jge 0x1400a5f99
lea edx, [rcx + 1]
mov dword [rbp + 0x20], edx
mov r13, qword [rax + rcx*8 + 8]
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x80]
call fcn.140171c60
test rax, rax
mov qword [rsp + 0x90], r13
jne 0x1400a5ad4
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xe0], rax
movaps xmmword [rsp + 0xd0], xmm6
mov rcx, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x80]
call fcn.140171d10
lea rcx, [rsp + 0xd8]
movups xmmword [rcx], xmm7
mov qword [rsp + 0xd0], rcx
mov rdx, qword [rax]
lea r8, [rax + 8]
lea rsi, [rsp + 0xd0]
mov rcx, rsi
call fcn.140172460
lea rdi, [r13 + 0x48]
mov rcx, rsi
mov rdx, rdi
mov r8, qword [rsp + 0x78]
call fcn.1400a6170
mov byte [rsp + 0x127], 5
mov eax, dword [str.ptype]
mov dword [rsp + 0x110], eax
mov al, byte [0x1401e1f4d]
mov byte [rsp + 0x114], al
mov byte [rsp + 0x115], 0
mov rcx, rdi
lea rsi, [rsp + 0xf0]
mov rdx, rsi
lea r8, [rsp + 0x110]
xor r9d, r9d
call fcn.140059c90
mov rbx, qword [rsp + 0xf0]
mov rbp, qword [rsp + 0xf8]
mov r15, qword [rsp + 0x100]
cmp byte [rsp + 0x127], 0
jns 0x1400a5615
mov rcx, qword [rsp + 0x110]
call fcn.1400f0498
test rbx, rbx
je 0x1400a5677
cmp dword [rbx + 0x34], 7
jne 0x1400a5677
mov eax, dword [rbx + 0x28]
or dword [r13 + 0x10], 4
mov dword [r13 + 0x88], eax
mov qword [rsp + 0x110], rbx
mov qword [rsp + 0x118], rbp
mov qword [rsp + 0x120], r15
lea rcx, [rsp + 0x110]
call fcn.14016f320
mov qword [rsp + 0xf0], rbx
mov qword [rsp + 0xf8], rbp
mov qword [rsp + 0x100], r15
mov rcx, rdi
mov rdx, rsi
call fcn.14016f3f0
mov rcx, qword [rsp + 0x88]
lea rdx, [rsp + 0xb8]
mov r8, qword [rsp + 0x80]
call fcn.140171f60
mov rbx, qword [rsp + 0xb8]
mov r14, qword [rsp + 0xc0]
cmp rbx, r14
je 0x1400a5f26
lea rax, [r13 + 0x18]
mov qword [rsp + 0x98], rax
lea rdi, [0x1401fea68]
mov rax, qword [r13 + 0x28]
test rax, rax
je 0x1400a56e1
movsxd rcx, dword [r13 + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400a56e7
lea edx, [rcx + 1]
mov dword [r13 + 0x20], edx
mov r12, qword [rax + rcx*8 + 8]
jmp 0x1400a5726
mov edx, dword [r13 + 0x24]
jmp 0x1400a56ed
cmp edx, dword [r13 + 0x24]
jne 0x1400a5702
inc edx
mov rcx, qword [rsp + 0x98]
call fcn.140015c60
mov rax, qword [r13 + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r13 + 0x18]
call fcn.14016d0f0
mov r12, rax
mov rax, qword [r13 + 0x28]
movsxd rcx, dword [r13 + 0x20]
lea edx, [rcx + 1]
mov dword [r13 + 0x20], edx
mov qword [rax + rcx*8 + 8], r12
mov rax, qword [rbx + 8]
mov ecx, dword [r12 + 0x10]
mov edx, ecx
or edx, 0x20
mov dword [r12 + 0x10], edx
mov qword [r12 + 0x40], rax
mov rax, qword [rbx + 0x18]
mov qword [r12 + 0x48], rax
or ecx, 0x61
mov dword [r12 + 0x10], ecx
lea rax, [r12 + 0x18]
mov rcx, qword [r12 + 8]
mov rdx, rcx
and rdx, 0xfffffffffffffffe
test cl, 1
je 0x1400a5768
mov rdx, qword [rdx]
lea r8, [rbx + 0x38]
mov rcx, qword [rax]
cmp rcx, rdi
je 0x1400a579c
cmp r8, rcx
je 0x1400a57b3
cmp byte [rcx + 0x17], 0
movzx eax, byte [rbx + 0x4f]
js 0x1400a5a50
test al, al
js 0x1400a57a6
mov rax, qword [rbx + 0x48]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rbx + 0x38]
movups xmmword [rcx], xmm0
jmp 0x1400a57b3
mov rcx, rax
call fcn.140012dc0
jmp 0x1400a57b3
mov rdx, qword [rbx + 0x38]
mov r8, qword [rbx + 0x40]
call fcn.1400e0a20
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x100], rax
movaps xmmword [rsp + 0xf0], xmm6
mov r9, qword [rbx + 0x18]
mov r8d, dword [rbx + 0x20]
mov rcx, rsi
lea rdx, str._08X_zx
call fcn.1400d42b0
or byte [r12 + 0x10], 2
lea rax, [r12 + 0x20]
mov rcx, qword [r12 + 8]
mov rdx, rcx
and rdx, 0xfffffffffffffffe
test cl, 1
je 0x1400a5803
mov rdx, qword [rdx]
mov rcx, qword [rax]
cmp rcx, rdi
je 0x1400a5841
cmp rcx, rsi
je 0x1400a5863
cmp byte [rcx + 0x17], 0
movzx r8d, byte [rsp + 0x107]
js 0x1400a5a6c
test r8b, r8b
js 0x1400a584e
mov rax, qword [rsp + 0x100]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0xf0]
movups xmmword [rcx], xmm0
jmp 0x1400a5863
mov rcx, rax
mov r8, rsi
call fcn.140012dc0
jmp 0x1400a5863
mov rdx, qword [rsp + 0xf0]
mov r8, qword [rsp + 0xf8]
call fcn.1400e0a20
or byte [r12 + 0x10], 4
lea rax, [r12 + 0x28]
mov rcx, qword [r12 + 8]
mov rdx, rcx
and rdx, 0xfffffffffffffffe
test cl, 1
je 0x1400a5882
mov rdx, qword [rdx]
lea r8, [rbx + 0x50]
mov rcx, qword [rax]
cmp rcx, rdi
je 0x1400a58b6
cmp r8, rcx
je 0x1400a58cd
cmp byte [rcx + 0x17], 0
movzx eax, byte [rbx + 0x67]
js 0x1400a5a8e
test al, al
js 0x1400a58c0
mov rax, qword [rbx + 0x60]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rbx + 0x50]
movups xmmword [rcx], xmm0
jmp 0x1400a58cd
mov rcx, rax
call fcn.140012dc0
jmp 0x1400a58cd
mov rdx, qword [rbx + 0x50]
mov r8, qword [rbx + 0x58]
call fcn.1400e0a20
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x120], rax
movaps xmmword [rsp + 0x110], xmm6
movzx eax, byte [rbx + 0x37]
movzx ecx, byte [rbx + 0x36]
movzx edx, byte [rbx + 0x35]
movzx esi, byte [rbx + 0x34]
movzx edi, byte [rbx + 0x33]
movzx ebp, byte [rbx + 0x32]
movzx r10d, byte [rbx + 0x31]
movzx r11d, byte [rbx + 0x30]
movzx r13d, word [rbx + 0x2e]
movzx r9d, word [rbx + 0x2c]
mov r15d, dword [rbx + 0x24]
mov r8d, dword [rbx + 0x28]
mov dword [rsp + 0x68], r15d
mov dword [rsp + 0x60], eax
mov dword [rsp + 0x58], ecx
mov dword [rsp + 0x50], edx
mov dword [rsp + 0x48], esi
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x38], ebp
mov dword [rsp + 0x30], r10d
mov dword [rsp + 0x28], r11d
mov dword [rsp + 0x20], r13d
lea rcx, [rsp + 0x110]
lea rdx, str._08X_04X_04X_02X_02X_02X_02X_02X_02X_02X_02X_x
call fcn.1400d42b0
or byte [r12 + 0x10], 8
lea rax, [r12 + 0x30]
mov rcx, qword [r12 + 8]
mov rdx, rcx
and rdx, 0xfffffffffffffffe
test cl, 1
je 0x1400a597a
mov rdx, qword [rdx]
lea rdi, [0x1401fea68]
mov r13, qword [rsp + 0x90]
mov rcx, qword [rax]
cmp rcx, rdi
lea rsi, [rsp + 0xf0]
je 0x1400a59d7
lea rax, [rsp + 0x110]
cmp rcx, rax
je 0x1400a59fe
cmp byte [rcx + 0x17], 0
movzx r8d, byte [rsp + 0x127]
js 0x1400a5aaa
test r8b, r8b
js 0x1400a59e9
mov rax, qword [rsp + 0x120]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [rsp + 0x110]
movups xmmword [rcx], xmm0
jmp 0x1400a59fe
mov rcx, rax
lea r8, [rsp + 0x110]
call fcn.140012dc0
jmp 0x1400a59fe
mov rdx, qword [rsp + 0x110]
mov r8, qword [rsp + 0x118]
call fcn.1400e0a20
mov al, byte [rbx]
or dword [r12 + 0x10], 0x100
xor al, 1
mov byte [r12 + 0x58], al
cmp byte [rsp + 0x127], 0
jns 0x1400a5a27
mov rcx, qword [rsp + 0x110]
call fcn.1400f0498
cmp byte [rsp + 0x107], 0
jns 0x1400a5a3e
mov rcx, qword [rsp + 0xf0]
call fcn.1400f0498
add rbx, 0x68
cmp r14, rbx
jne 0x1400a56c0
jmp 0x1400a5f1e
test al, al
jns 0x1400a5a5c
mov rax, qword [rbx + 0x40]
mov r8, qword [rbx + 0x38]
mov rdx, r8
mov r8, rax
call fcn.1400e0ad0
jmp 0x1400a57b3
test r8b, r8b
cmovs r8, qword [rsp + 0xf8]
mov rdx, qword [rsp + 0xf0]
cmovns rdx, rsi
call fcn.1400e0ad0
jmp 0x1400a5863
test al, al
jns 0x1400a5a9a
mov rax, qword [rbx + 0x58]
mov r8, qword [rbx + 0x50]
mov rdx, r8
mov r8, rax
call fcn.1400e0ad0
jmp 0x1400a58cd
test r8b, r8b
cmovs r8, qword [rsp + 0x118]
mov rdx, qword [rsp + 0x110]
lea rax, [rsp + 0x110]
cmovns rdx, rax
call fcn.1400e0ad0
jmp 0x1400a59fe
mov rbp, rax
lea rax, [r13 + 0x30]
mov qword [rsp + 0xb0], rax
mov eax, dword [r13 + 0x10]
test al, 2
jne 0x1400a5afd
mov rcx, qword [rbp + 0x20]
or eax, 2
mov dword [r13 + 0x10], eax
mov qword [r13 + 0x80], rcx
mov rax, qword [r13 + 0x40]
test rax, rax
lea rsi, [0x1401fea68]
je 0x1400a5b25
movsxd rcx, dword [r13 + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400a5b2b
lea edx, [rcx + 1]
mov dword [r13 + 0x38], edx
mov r14, qword [rax + rcx*8 + 8]
jmp 0x1400a5b6a
mov edx, dword [r13 + 0x3c]
jmp 0x1400a5b31
cmp edx, dword [r13 + 0x3c]
jne 0x1400a5b46
inc edx
mov rcx, qword [rsp + 0xb0]
call fcn.140015c60
mov rax, qword [r13 + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r13 + 0x30]
call fcn.14016d500
mov r14, rax
mov rax, qword [r13 + 0x40]
movsxd rcx, dword [r13 + 0x38]
lea edx, [rcx + 1]
mov dword [r13 + 0x38], edx
mov qword [rax + rcx*8 + 8], r14
or byte [r14 + 0x10], 1
lea rax, [r14 + 0x30]
mov rcx, qword [r14 + 8]
mov rdx, rcx
and rdx, 0xfffffffffffffffe
test cl, 1
je 0x1400a5b86
mov rdx, qword [rdx]
mov rcx, qword [rax]
cmp rcx, rsi
je 0x1400a5bb8
cmp rcx, rbp
je 0x1400a5bd2
cmp byte [rcx + 0x17], 0
movzx r8d, byte [rbp + 0x17]
js 0x1400a5f04
test r8b, r8b
js 0x1400a5bc5
mov rax, qword [rbp + 0x10]
mov qword [rcx + 0x10], rax
movups xmm0, xmmword [rbp]
movups xmmword [rcx], xmm0
jmp 0x1400a5bd2
mov rcx, rax
mov r8, rbp
call fcn.140012dc0
jmp 0x1400a5bd2
mov rdx, qword [rbp]
mov r8, qword [rbp + 8]
call fcn.1400e0a20
mov rcx, qword [rbp + 0x28]
mov eax, dword [r14 + 0x10]
mov edx, eax
or edx, 4
mov dword [r14 + 0x10], edx
mov qword [r14 + 0x40], rcx
mov ecx, dword [rbp + 0x48]
mov edx, eax
or edx, 0xc
mov dword [r14 + 0x10], edx
mov dword [r14 + 0x48], ecx
cmp byte [rbp + 0xc0], 0xe0
jne 0x1400a5c6d
or eax, 0xe
mov dword [r14 + 0x10], eax
mov rax, qword [r14 + 0x38]
test rax, rax
jne 0x1400a5c2b
mov rax, qword [r14 + 8]
mov rcx, rax
and rcx, 0xfffffffffffffffe
test al, 1
je 0x1400a5c22
mov rcx, qword [rcx]
call fcn.14016d440
mov qword [r14 + 0x38], rax
mov ecx, dword [rbp + 0xc8]
mov ebx, dword [rax + 0x10]
mov edx, ebx
or edx, 8
mov dword [rax + 0x10], edx
mov dword [rax + 0x30], ecx
mov rcx, qword [rbp + 0x58]
mov edx, ebx
or edx, 9
mov dword [rax + 0x10], edx
mov qword [rax + 0x18], rcx
mov rcx, qword [rbp + 0x60]
mov edx, ebx
or edx, 0xb
mov dword [rax + 0x10], edx
mov qword [rax + 0x20], rcx
mov rcx, qword [rbp + 0x50]
or ebx, 0xf
mov dword [rax + 0x10], ebx
mov qword [rax + 0x28], rcx
mov rax, qword [rbp + 0x38]
cmp rax, qword [rbp + 0x30]
je 0x1400a5ede
lea rax, [r14 + 0x18]
mov qword [rsp + 0x98], rax
mov r15d, 0x7c
xor r13d, r13d
xor r12d, r12d
mov rax, qword [r14 + 0x28]
test rax, rax
je 0x1400a5cb4
movsxd rcx, dword [r14 + 0x20]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400a5cba
lea edx, [rcx + 1]
mov dword [r14 + 0x20], edx
mov rax, qword [rax + rcx*8 + 8]
jmp 0x1400a5cf6
mov edx, dword [r14 + 0x24]
jmp 0x1400a5cc0
cmp edx, dword [r14 + 0x24]
jne 0x1400a5cd5
inc edx
mov rcx, qword [rsp + 0x98]
call fcn.140015c60
mov rax, qword [r14 + 0x28]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rcx, qword [r14 + 0x18]
call fcn.14016d3c0
mov rcx, qword [r14 + 0x28]
movsxd rdx, dword [r14 + 0x20]
lea ebx, [rdx + 1]
mov dword [r14 + 0x20], ebx
mov qword [rcx + rdx*8 + 8], rax
mov r9, rbp
mov r8, qword [rbp + 0x30]
mov rbx, qword [r8 + r15 - 0x7c]
mov edx, dword [rax + 0x10]
mov ecx, edx
or ecx, 1
mov dword [rax + 0x10], ecx
mov qword [rax + 0x48], rbx
mov rcx, qword [r8 + r15 - 0x74]
mov ebp, edx
or ebp, 0x201
mov dword [rax + 0x10], ebp
mov qword [rax + 0x88], rcx
mov rcx, qword [r8 + r15 - 0x6c]
mov esi, edx
or esi, 0x203
mov dword [rax + 0x10], esi
mov qword [rax + 0x50], rcx
mov bl, byte [r8 + r15 - 0xc]
cmp bl, 0x2f
jg 0x1400a5d8d
cmp bl, 0xf0
je 0x1400a5dd7
cmp bl, 0x10
mov rbp, r9
je 0x1400a5e44
cmp bl, 0x20
jne 0x1400a5e8e
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x70], 2
mov rcx, qword [r8 + r15 - 4]
or edx, 0x22b
mov dword [rax + 0x10], edx
mov qword [rax + 0x60], rcx
jmp 0x1400a5e8e
cmp bl, 0x30
je 0x1400a5e1b
cmp bl, 0x41
mov rbp, r9
je 0x1400a5e6a
cmp bl, 0x51
jne 0x1400a5e8e
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x70], 5
mov rcx, qword [r8 + r15 - 4]
or edx, 0x323
mov dword [rax + 0x10], edx
mov qword [rax + 0x80], rcx
jmp 0x1400a5e8e
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x70], 6
mov ecx, dword [r8 + r15 - 4]
mov edi, edx
or edi, 0x263
mov dword [rax + 0x10], edi
movabs rdi, 0xaaaaaaaaaaaaaaab
mov dword [rax + 0x74], ecx
mov ecx, dword [r8 + r15]
or edx, 0x663
mov dword [rax + 0x10], edx
mov dword [rax + 0x90], ecx
jmp 0x1400a5e3f
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x70], 3
mov rcx, qword [r8 + r15 - 4]
or edx, 0x233
mov dword [rax + 0x10], edx
mov qword [rax + 0x68], rcx
mov rbp, r9
jmp 0x1400a5e8e
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x70], 1
mov rcx, qword [r8 + r15 - 4]
or edx, 0x227
mov dword [rax + 0x10], edx
mov qword [rax + 0x58], rcx
jmp 0x1400a5e8e
mov ecx, edx
or ecx, 0x223
mov dword [rax + 0x10], ecx
mov dword [rax + 0x70], 4
mov rcx, qword [r8 + r15 - 4]
or edx, 0x2a3
mov dword [rax + 0x10], edx
mov qword [rax + 0x78], rcx
mov rcx, qword [rbp + 0xd0]
mov rdx, qword [rbp + 0xd8]
sub rdx, rcx
sar rdx, 3
imul rdx, rdi
cmp r12, rdx
jae 0x1400a5ebe
add rax, 0x18
add rcx, r13
mov rdx, rax
xor r8d, r8d
call fcn.1400a6170
inc r12
mov rax, qword [rbp + 0x38]
sub rax, qword [rbp + 0x30]
sar rax, 7
add r13, 0x18
sub r15, 0xffffffffffffff80
cmp r12, rax
jb 0x1400a5c93
mov rcx, qword [rsp + 0x88]
call fcn.140171ca0
mov rbp, rax
test rax, rax
mov r13, qword [rsp + 0x90]
jne 0x1400a5ae3
jmp 0x1400a5531
mov rdx, rbp
test r8b, r8b
jns 0x1400a5f14
mov r8, qword [rbp + 8]
mov rdx, qword [rbp]
call fcn.1400e0ad0
jmp 0x1400a5bd2
mov rbx, qword [rsp + 0xb8]
test rbx, rbx
je 0x1400a5f61
mov rdi, qword [rsp + 0xc0]
mov rcx, rbx
cmp rdi, rbx
je 0x1400a5f54
add rdi, 0xffffffffffffff98
mov rcx, rdi
call fcn.14014f480
cmp rbx, rdi
jne 0x1400a5f3b
mov rcx, qword [rsp + 0xb8]
mov qword [rsp + 0xc0], rbx
call fcn.1400f0498
mov rdx, qword [rsp + 0xd8]
lea rcx, [rsp + 0xd0]
call fcn.14014e930
mov rdi, qword [rsp + 0xa0]
mov rcx, qword [rdi]
call fcn.1401a4380
mov qword [rsp + 0x80], rax
test rax, rax
jne 0x1400a5483
jmp 0x1400a5fa7
cmp edx, dword [rbp + 0x24]
je 0x1400a54a9
jmp 0x1400a54c3
lea rsi, [rsp + 0xf0]
movabs rax, 0xaaaaaaaaaaaaaaaa
mov qword [rsi + 0x10], rax
movaps xmm0, xmmword [0x1401c8a80]
movaps xmmword [rsi], xmm0
mov rcx, qword [rdi]
mov rdx, rsi
call fcn.140171de0
mov rbp, qword [rsi]
mov r15, qword [rsi + 8]
cmp rbp, r15
mov rdi, qword [rsp + 0x78]
je 0x1400a6101
lea rsi, [rdi + 0x30]
xorps xmm6, xmm6
lea r14, [fcn.140127b50]
mov rax, qword [rdi + 0x40]
test rax, rax
je 0x1400a6015
movsxd rcx, dword [rdi + 0x38]
mov edx, dword [rax]
cmp ecx, edx
jge 0x1400a601a
lea edx, [rcx + 1]
mov dword [rdi + 0x38], edx
mov rax, qword [rax + rcx*8 + 8]
jmp 0x1400a6071
mov edx, dword [rdi + 0x3c]
jmp 0x1400a601f
cmp edx, dword [rdi + 0x3c]
jne 0x1400a6034
inc edx
mov rcx, rsi
call fcn.140015c60
mov rax, qword [rsp + 0x78]
mov rax, qword [rax + 0x40]
mov edx, dword [rax]
inc edx
mov dword [rax], edx
mov rbx, qword [rsi]
test rbx, rbx
jne 0x1400a60d5
mov ecx, 0x18
call fcn.1400f045c
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov rdi, qword [rsp + 0x78]
mov rcx, qword [rdi + 0x40]
movsxd rdx, dword [rdi + 0x38]
lea ebx, [rdx + 1]
mov dword [rdi + 0x38], ebx
mov qword [rcx + rdx*8 + 8], rax
cmp rbp, rax
je 0x1400a60ac
cmp byte [rax + 0x17], 0
movzx r8d, byte [rbp + 0x17]
js 0x1400a60bb
test r8b, r8b
js 0x1400a6097
mov rcx, qword [rbp + 0x10]
mov qword [rax + 0x10], rcx
movups xmm0, xmmword [rbp]
movups xmmword [rax], xmm0
jmp 0x1400a60ac
mov rdx, qword [rbp]
mov r8, qword [rbp + 8]
mov rcx, rax
call fcn.1400e0a20
mov rdi, qword [rsp + 0x78]
add rbp, 0x18
cmp r15, rbp
jne 0x1400a5ff5
jmp 0x1400a6101
mov rdx, rbp
test r8b, r8b
jns 0x1400a60cb
mov r8, qword [rbp + 8]
mov rdx, qword [rbp]
mov rcx, rax
call fcn.1400e0ad0
jmp 0x1400a60a7
cmp qword [rbx + 0x70], 0
je 0x1400a60ec
mov r8d, 0x18
mov rcx, rbx
xor edx, edx
call fcn.140127ab0
mov edx, 0x18
mov rcx, rbx
mov r8, r14
call fcn.140127ad0
jmp 0x1400a604e
lea rcx, [rsp + 0xf0]
call fcn.1400e82e0
mov rax, qword [rsp + 0xa0]
mov rsi, qword [rax]
mov qword [rax], 0
test rsi, rsi
je 0x1400a6135
mov rcx, rsi
call fcn.140170e10
mov rcx, rsi
call fcn.1400f0498
mov rcx, qword [rsp + 0x128]
xor rcx, rsp
call fcn.1400f32c0
mov eax, 1
movaps xmm6, xmmword [rsp + 0x130]
movaps xmm7, xmmword [rsp + 0x140]
add rsp, 0x158
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret