Function at 0x140057494
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, 0x508
mov rbx, rdx
mov r13, rcx
lea r15, [rdx + 0x188]
mov cl, byte [rdx + 0x188]
mov r12, qword [rdx + 0x190]
mov r14, qword [rdx + 0x198]
mov rax, qword [rdx + 0x1a0]
mov byte [rdx + 0x188], 0x13
cmp cl, 0x17
jne 0x14005750b
cmp byte [rbx + 0x180], 0
je 0x140057574
mov byte [r13], 2
mov rcx, r12
mov rdx, r14
add rsp, 0x508
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
jmp fcn.14005746d
lea rsi, [rsp + 0x130]
mov byte [rsi], cl
mov ecx, dword [rbx + 0x189]
mov edx, dword [rbx + 0x18c]
mov dword [rsi + 1], ecx
mov dword [rsi + 4], edx
mov qword [rsi + 8], r12
mov qword [rsi + 0x10], r14
mov qword [rsi + 0x18], rax
lea rdi, [rsp + 0x298]
mov rcx, rdi
mov rdx, rsi
call fcn.14005866c
mov rcx, r15
call fcn.140057454
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [r15 + 0x10], xmm1
movups xmmword [r15], xmm0
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [r13 + 0x10], xmm1
movups xmmword [r13], xmm0
jmp 0x14005855d
mov qword [rsp + 0xa0], r13
mov qword [rsp + 0x98], r15
lea rax, [rbx + 0x130]
mov qword [rsp + 0xb0], rax
lea rax, [rbx + 0x1a8]
mov qword [rsp + 0x108], rax
lea rax, [rbx + 0x1c8]
mov qword [rsp + 0x88], rax
mov rdx, qword [rbx + 0x168]
test rdx, rdx
je 0x1400584a2
mov rax, qword [rbx + 0x160]
lea r8, [rax + 1]
mov rcx, qword [rbx + 0x150]
mov r9, qword [rbx + 0x158]
cmp r8, r9
mov r8d, 0
cmovb r9, r8
neg r9
lea r8, [rax + r9]
inc r8
mov qword [rbx + 0x160], r8
dec rdx
mov qword [rbx + 0x168], rdx
shl rax, 5
movzx edi, word [rcx + rax + 0x1a]
cmp di, 9
je 0x1400584a2
mov r13, qword [rcx + rax]
mov rdx, qword [rcx + rax + 8]
mov rsi, qword [rcx + rax + 0x10]
mov r10b, byte [rcx + rax + 0x18]
mov r15b, byte [rcx + rax + 0x19]
mov eax, dword [rcx + rax + 0x1c]
test r10b, r10b
jne 0x140057699
cmp byte [rbx + 0x127], 0
jne 0x140057699
cmp word [rbx + 0x120], 5
jne 0x140057699
mov rdi, rdx
mov r9d, 1
mov rcx, r13
mov rdx, rsi
lea r8, [0x1400f23c0]
call fcn.14003eb8b
test al, al
je 0x1400577d8
mov al, byte [rbx + 0x12c]
cmp al, 3
jae 0x1400577d8
inc al
mov byte [rbx + 0x12c], al
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r14
mov byte [rsp + 0x60], 0x17
mov r12b, 0x17
jmp 0x140057829
cmp byte [rbx + 0x41], 2
jne 0x140057839
mov qword [rsp + 0x58], r12
mov r12, qword [rbx + 0x38]
cmp r12, 0xffffffffffff0000
jne 0x1400576f9
mov r12d, eax
mov rcx, rbx
mov byte [rsp + 0x48], r15b
mov word [rsp + 0x38], di
mov rdi, r13
mov r13, r14
mov r14d, ebp
mov rbp, rdx
mov r15d, r10d
call fcn.140056c66
mov r10d, r15d
mov rdx, rbp
mov ebp, r14d
mov r14, r13
mov r13, rdi
movzx edi, word [rsp + 0x38]
mov r15b, byte [rsp + 0x48]
mov eax, r12d
mov r12, qword [rbx + 0x38]
mov qword [rsp + 0x358], r13
mov qword [rsp + 0x360], rdx
mov qword [rsp + 0x368], rsi
mov byte [rsp + 0x370], r10b
mov byte [rsp + 0x371], r15b
mov word [rsp + 0x372], di
mov dword [rsp + 0x374], eax
mov rdx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x28]
lea rcx, [rsp + 0x298]
lea r8, [rsp + 0x358]
mov r9, r12
call qword [rax + 0x20]
cmp qword [rsp + 0x298], 0
lea rax, [rsp + 0x2a0]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x210], xmm1
movaps xmmword [rsp + 0x200], xmm0
lea rax, [rsp + 0x138]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
je 0x140057855
mov qword [rsp + 0x130], 1
movzx eax, byte [rsp + 0x138]
cmp rax, 6
je 0x1400578b8
cmp eax, 0x14
mov r12, qword [rsp + 0x58]
jne 0x1400578e3
mov rcx, rbx
mov dl, 4
call fcn.1400587ec
mov rax, qword [rsp + 0x80]
and rax, 0xffffffffffffff00
or rax, 0x14
jmp 0x140057956
mov rcx, rbx
mov dl, 1
call fcn.1400587ec
mov ecx, 0x1e
xor edx, edx
call fcn.14003fb6b
movups xmm0, xmmword [0x1400e6bb3]
movups xmmword [rax], xmm0
movups xmm0, xmmword [0x1400e6bc1]
movups xmmword [rax + 0xe], xmm0
mov byte [rsp + 0x60], 9
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], 0x1e
mov rcx, r12
mov rdx, r14
call fcn.14005746d
mov r12b, 9
mov rcx, r13
mov rdx, rdi
call fcn.14003829d
jmp 0x140058459
mov qword [rsp + 0x48], rdx
mov dword [rsp + 0x38], eax
mov rcx, qword [rsp + 0x88]
movzx r8d, word [rsp + 0x34]
jmp 0x140057a51
inc r12
mov qword [rbx + 0x38], r12
mov r13, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x140]
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x90], rax
mov r15b, byte [rsp + 0x150]
mov al, byte [rsp + 0x151]
movzx r8d, word [rsp + 0x152]
movzx edx, word [rsp + 0x154]
mov word [rsp + 0x3e], dx
movzx edx, word [rsp + 0x156]
mov word [rsp + 0x56], dx
mov r12, qword [rsp + 0x58]
jmp 0x140057991
cmp qword [rbx], 0
mov r12, qword [rsp + 0x58]
je 0x14005793a
mov rax, qword [rbx + 8]
sub rax, rsi
jb 0x14005793a
mov qword [rbx], 1
mov qword [rbx + 8], rax
mov sil, 1
mov word [rsp + 0x34], 9
jmp 0x140057960
mov r13, qword [rsp + 0x138]
mov rcx, qword [rsp + 0x140]
mov rax, qword [rsp + 0x148]
mov qword [rsp + 0x90], rax
mov r15b, byte [rsp + 0x150]
mov al, byte [rsp + 0x151]
movzx r8d, word [rsp + 0x152]
movzx edx, word [rsp + 0x154]
mov word [rsp + 0x3e], dx
movzx edx, word [rsp + 0x156]
mov word [rsp + 0x56], dx
jmp 0x1400579c7
mov rcx, rbx
mov dl, 2
call fcn.1400587ec
mov rax, qword [rsp + 0x80]
and rax, 0xffffffffffffff00
or rax, 6
mov qword [rsp + 0x80], rax
xor esi, esi
lea rcx, [rsp + 0x138]
call fcn.14002fea4
test sil, sil
mov r15b, byte [rsp + 0x37]
mov r13, qword [rsp + 0x80]
mov al, byte [rsp + 0x36]
mov rcx, qword [rsp + 0xa8]
movzx r8d, word [rsp + 0x34]
je 0x1400579c7
cmp r8w, 9
mov byte [rsp + 0x37], r15b
mov qword [rsp + 0x80], r13
mov byte [rsp + 0x36], al
mov qword [rsp + 0xa8], rcx
jne 0x140057a2a
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r14
mov word [rsp + 0x34], 9
jmp 0x1400575b1
mov qword [rsp + 0x60], r13
mov qword [rsp + 0xa8], rcx
mov qword [rsp + 0x68], rcx
mov rcx, qword [rsp + 0x90]
mov qword [rsp + 0x70], rcx
mov byte [rsp + 0x37], r15b
mov byte [rsp + 0x78], r15b
mov byte [rsp + 0x36], al
mov byte [rsp + 0x79], al
mov word [rsp + 0x34], r8w
mov word [rsp + 0x7a], r8w
movzx eax, word [rsp + 0x3e]
mov word [rsp + 0x7c], ax
movzx eax, word [rsp + 0x56]
mov word [rsp + 0x7e], ax
mov qword [rsp + 0x80], r13
mov r12d, r13d
mov esi, ebp
jmp 0x14005844a
mov rsi, qword [rsp + 0x90]
mov qword [rsp + 0x48], rcx
mov r10d, r15d
mov r15d, eax
mov edi, r8d
movzx eax, word [rsp + 0x3e]
mov dword [rsp + 0x38], eax
mov rcx, qword [rsp + 0x88]
cmp r10b, 2
mov word [rsp + 0x34], r8w
jne 0x140057a97
and qword [rbx], 0
mov r15, qword [rbx + 0x1d8]
test r15, r15
je 0x140057b20
add rsi, r13
mov rdx, r13
mov r8, rsi
call fcn.14003f758
xor eax, eax
mov qword [rsp + 0x40], rax
mov rsi, qword [rbx + 0x1d8]
mov r8, qword [rsp + 0x48]
jmp 0x140057b54
mov qword [rsp + 0xb8], r13
mov qword [rsp + 0xc0], rsi
and qword [rsp + 0xc8], 0
cmp r10b, 3
lea rcx, [rsp + 0xb8]
mov qword [rsp + 0x58], r12
je 0x140057d34
mov word [rsp + 0x3c], bp
movzx eax, r10b
cmp eax, 1
je 0x140057d4c
mov bp, 0x22
test eax, eax
jne 0x1400581aa
mov esi, r10d
call fcn.14004d1b6
mov r10d, esi
test al, 1
sete al
cmp dl, 1
setne cl
or cl, al
mov rax, qword [rsp + 0xc8]
cmp rax, qword [rsp + 0xc0]
setb al
or al, cl
movzx eax, al
lea ebp, [rax + rax]
add ebp, 0x20
jmp 0x1400581aa
mov rcx, qword [rbx + 0x1c8]
mov rdx, qword [rbx + 0x1d0]
call fcn.14003829d
mov qword [rbx + 0x1c8], r13
mov r8, qword [rsp + 0x48]
mov qword [rbx + 0x1d0], r8
mov qword [rbx + 0x1d8], rsi
xor eax, eax
mov qword [rsp + 0x40], rax
cmp rsi, 4
jb 0x140057bd9
mov rax, qword [rsp + 0x88]
mov rdx, qword [rax]
lea rax, str.C:UsersYo.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.20.6_srcmsgshsjoiner.rs
mov qword [rsp + 0x20], rax
mov r9d, 4
lea rcx, [rsp + 0x298]
mov r8, rsi
call fcn.14000c5e3
mov rdx, qword [rsp + 0x298]
mov r8, qword [rsp + 0x2a0]
mov rsi, qword [rsp + 0x2b0]
mov ecx, 1
lea r9, str.C:UsersYo.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.20.6_srcmsgshsjoiner.rs
call fcn.14003b6a2
mov rcx, rax
call fcn.14004d3ea
mov r8, qword [rsp + 0x48]
cmp eax, 1
jne 0x140057bd9
cmp edx, 0xffff
ja 0x140057e29
mov eax, edx
cmp rsi, rax
jae 0x140057dd7
test r15, r15
je 0x140057be9
mov rcx, r13
mov rdx, r8
call fcn.14003829d
cmp qword [rbx + 0x1d8], 0
sete byte [rbx + 0x125]
lea r15, [rsp + 0x130]
mov rax, qword [rbx + 0x1c0]
test rax, rax
je 0x140057cd8
mov rcx, qword [rbx + 0x1b0]
mov rdx, qword [rbx + 0x1b8]
lea r8, [rdx + 1]
cmp r8, rcx
mov r8d, 0
cmovae r8, rcx
neg r8
lea rcx, [rdx + r8]
inc rcx
mov qword [rbx + 0x1b8], rcx
dec rax
mov qword [rbx + 0x1c0], rax
imul rsi, rdx, 0xc0
add rsi, qword [rbx + 0x1a8]
mov r8d, 0xc0
mov rcx, r15
mov rdx, rsi
call fcn.1400ca0a0
cmp word [rsp + 0x1e8], 9
je 0x140057ce2
mov r8d, 0xc0
lea rdi, [rsp + 0x298]
mov rcx, rdi
mov rdx, rsi
call fcn.1400ca0a0
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
lea rcx, [rsp + 0x200]
mov rdx, rbx
mov r8, rdi
mov r9, r12
call fcn.140058836
mov r12b, byte [rsp + 0x200]
cmp r12b, 0x17
jne 0x140057cf9
mov r12, qword [rsp + 0x208]
mov r14, qword [rsp + 0x210]
jmp 0x140057c00
mov word [rsp + 0x1e8], 9
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r14
mov byte [rsp + 0x60], 0x17
mov r12b, 0x17
jmp 0x140058459
lea rcx, [rsp + 0x201]
mov eax, dword [rcx]
mov ecx, dword [rcx + 3]
lea rdx, [rsp + 0x61]
mov dword [rdx + 3], ecx
mov dword [rdx], eax
movups xmm0, xmmword [rsp + 0x208]
mov rax, qword [rsp + 0x218]
mov byte [rsp + 0x60], r12b
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], rax
jmp 0x140058459
mov rax, r13
shr rax, 0x20
mov qword [rsp + 0x40], rax
mov bp, 0x21
mov r12d, r13d
jmp 0x140058288
mov esi, r10d
call fcn.14004d1b6
xor ecx, ecx
cmp dl, 2
sete cl
mov r12d, 2
sub r12d, ecx
cmp dl, 1
mov ecx, 0
cmove r12d, ecx
mov ebp, 3
test al, 1
cmove r12d, ebp
jne 0x140057d86
mov r10d, esi
jmp 0x140058176
mov byte [rsp + 0x40], dl
lea rcx, [rsp + 0xb8]
call fcn.14004d1b6
test al, 1
mov r10d, esi
je 0x140058176
movzx ecx, dl
mov eax, 0x220000
lea r8d, [rcx - 0x14]
cmp r8d, 0x28
ja case.default.0x140057dcb
lea r9, [0x140058574]
movsxd rcx, dword [r9 + r8*4]
add rcx, r9
mov r8b, byte [rsp + 0x40]
jmp rcx
mov eax, 0x20000
jmp case.0x140058009.101
mov rax, qword [rbx + 0x1c8]
mov rcx, qword [rbx + 0x1d8]
mov qword [rsp + 0x200], rax
mov qword [rsp + 0x208], rcx
and qword [rsp + 0x210], 0
lea rsi, [rsp + 0x130]
mov rcx, rsi
lea rdx, [rsp + 0x200]
mov r8d, edi
call fcn.140052ed4
cmp word [rsp + 0x1c0], 0x1e
jne 0x140057e61
mov r8, qword [rsp + 0x48]
mov qword [rsp + 0x58], r12
test r15, r15
je 0x140057e3e
mov rcx, r13
mov rdx, r8
call fcn.14003829d
mov rcx, rbx
mov dl, 0x10
call fcn.1400587ec
mov word [rsp + 0x60], 0x203
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x68], rax
mov r12b, 3
jmp 0x140057a23
mov word [rsp + 0x3c], bp
mov qword [rsp + 0x58], r12
mov r8d, 0xa0
lea rcx, [rsp + 0x298]
mov rdx, rsi
call fcn.1400ca0a0
mov r8, qword [rsp + 0x210]
mov rcx, qword [rbx + 0x1c8]
mov rdx, qword [rbx + 0x1d8]
mov qword [rsp + 0x100], r8
lea r9, str.C:UsersYo.cargo_registry_srcindex.crates.io_6f17d22bba15001f_rustls_0.20.6_srcmsgshsjoiner.rs
call fcn.1400498ce
mov r12, rax
mov rsi, rdx
mov rcx, rdx
xor edx, edx
call fcn.14003fb6b
mov qword [rsp + 0xf0], rdx
mov qword [rsp + 0xf8], rax
mov rcx, rax
mov rdx, r12
mov r8, rsi
call fcn.1400ca0a0
mov rax, qword [rbx + 0x1b0]
mov rbp, qword [rbx + 0x1c0]
cmp rbp, rax
jne 0x140057f07
mov rcx, qword [rsp + 0x108]
call fcn.14004c0e4
mov rax, qword [rbx + 0x1b0]
mov rbp, qword [rbx + 0x1c0]
mov rcx, qword [rbx + 0x1b8]
add rcx, rbp
cmp rcx, rax
mov edx, 0
cmovae rdx, rax
sub rcx, rdx
mov rax, qword [rbx + 0x1a8]
imul rcx, rcx, 0xc0
lea r12, [rax + rcx]
add r12, 0x18
mov rax, qword [rsp + 0xf8]
mov qword [r12 - 0x18], rax
mov rax, qword [rsp + 0xf0]
mov qword [r12 - 0x10], rax
mov qword [r12 - 8], rsi
mov r8d, 0xa0
mov rcx, r12
lea rdx, [rsp + 0x298]
call fcn.1400ca0a0
mov word [r12 + 0xa0], di
mov eax, dword [rsp + 0x38]
mov word [r12 + 0xa2], ax
inc rbp
mov qword [rbx + 0x1c0], rbp
lea rcx, [rsp + 0x130]
mov rsi, qword [rsp + 0x88]
mov rdx, rsi
mov r8, qword [rsp + 0x100]
call fcn.140056108
mov rcx, qword [rbx + 0x1c8]
mov rdx, qword [rbx + 0x1d0]
call fcn.14003829d
mov rax, qword [rsp + 0x140]
mov qword [rsi + 0x10], rax
movups xmm0, xmmword [rsp + 0x130]
movups xmmword [rsi], xmm0
mov rax, qword [rsp + 0x40]
inc rax
mov r12, qword [rsp + 0x58]
movzx ebp, word [rsp + 0x3c]
jmp 0x140057a81
lea r8d, [rcx - 0x64]
cmp r8d, 0x14
ja case.default.0x140058009
lea r9, [0x140058618]
movsxd rcx, dword [r9 + r8*4]
add rcx, r9
mov r8b, byte [rsp + 0x40]
jmp rcx
mov eax, 0x180000
jmp case.0x140058009.101
cmp ecx, 0x5a
je 0x140058135
cmp ecx, 0xa
mov r8b, byte [rsp + 0x40]
je 0x140058141
cmp ecx, 0x46
je 0x140058148
cmp ecx, 0x47
je 0x14005814f
cmp ecx, 0x50
je 0x140058156
cmp ecx, 0x56
je 0x14005815d
test ecx, ecx
jne case.0x140058009.101
xor eax, eax
jmp case.0x140058009.101
mov eax, 0x30000
jmp case.0x140058009.101
mov eax, 0x40000
jmp case.0x140058009.101
mov eax, 0x50000
jmp case.0x140058009.101
mov eax, 0x60000
jmp case.0x140058009.101
mov eax, 0x70000
jmp case.0x140058009.101
mov eax, 0x80000
jmp case.0x140058009.101
mov eax, 0x90000
jmp case.0x140058009.101
mov eax, 0xa0000
jmp case.0x140058009.101
mov eax, 0xb0000
jmp case.0x140058009.101
mov eax, 0xc0000
jmp case.0x140058009.101
mov eax, 0xd0000
jmp case.0x140058009.101
mov eax, 0xe0000
jmp case.0x140058009.101
mov eax, 0xf0000
jmp case.0x140058009.101
mov eax, 0x100000
jmp case.0x140058009.101
mov eax, 0x110000
jmp case.0x140058009.101
mov eax, 0x120000
jmp case.0x140058009.101
mov eax, 0x190000
jmp case.0x140058009.101
mov eax, 0x1a0000
jmp case.0x140058009.101
mov eax, 0x1b0000
jmp case.0x140058009.101
mov eax, 0x1c0000
jmp case.0x140058009.101
mov eax, 0x1d0000
jmp case.0x140058009.101
mov eax, 0x1e0000
jmp case.0x140058009.101
mov eax, 0x1f0000
jmp case.0x140058009.101
mov eax, 0x200000
jmp case.0x140058009.101
mov eax, 0x210000
jmp case.0x140058009.101
mov eax, 0x170000
mov r8b, byte [rsp + 0x40]
jmp case.0x140058009.101
mov eax, 0x10000
jmp case.0x140058009.101
mov eax, 0x130000
jmp case.0x140058009.101
mov eax, 0x140000
jmp case.0x140058009.101
mov eax, 0x150000
jmp case.0x140058009.101
mov eax, 0x160000
movzx ecx, dl
shl ecx, 0x18
or ecx, eax
movzx ebp, r8b
shl ebp, 8
or ebp, ecx
or ebp, r12d
mov rax, qword [rsp + 0xc8]
cmp rax, qword [rsp + 0xc0]
mov r12d, ebp
mov eax, 3
cmovb r12d, eax
cmp bpl, 3
cmove r12d, eax
xor eax, eax
cmp r12b, 3
sete al
lea ebp, [rax*4 + 0x1e]
mov byte [rsp + 0x111], r10b
mov byte [rsp + 0x112], r15b
mov byte [rsp + 0x110], 3
cmp bp, 0x22
jne 0x1400581f2
mov r12d, dword [rsp + 0x110]
mov eax, dword [rsp + 0x114]
mov qword [rsp + 0x40], rax
mov r15, qword [rsp + 0x118]
mov bp, 0x22
mov rsi, qword [rsp + 0x120]
jmp 0x14005823f
mov r8d, 0x90
lea rcx, [rsp + 0x200]
lea rdx, [rsp + 0x298]
call fcn.1400ca0a0
mov rax, qword [rsp + 0x1f2]
mov rcx, qword [rsp + 0x1f8]
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe6], rcx
lea rcx, [rsp + 0x110]
call fcn.14002fea4
mov qword [rsp + 0x40], rax
mov rdx, qword [rsp + 0x48]
mov rcx, r13
call fcn.14003829d
cmp bp, 0x22
jne 0x140058283
mov rax, qword [rsp + 0x200]
mov dword [rsp + 0x60], r12d
mov rcx, qword [rsp + 0x40]
mov dword [rsp + 0x64], ecx
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x70], rsi
mov qword [rsp + 0x78], rax
movzx eax, word [rsp + 0x3c]
mov esi, eax
jmp 0x14005844a
mov qword [rsp + 0x48], r15
mov r8d, 0x90
lea r15, [rsp + 0x358]
mov rcx, r15
lea rdx, [rsp + 0x200]
call fcn.1400ca0a0
mov rax, qword [rsp + 0xe0]
mov rcx, qword [rsp + 0xe6]
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd6], rcx
mov r8d, 0x90
lea r13, [rsp + 0x478]
mov rcx, r13
mov rdx, r15
call fcn.1400ca0a0
mov r8d, 0x90
lea r15, [rsp + 0x3e8]
mov rcx, r15
mov rdx, r13
call fcn.1400ca0a0
mov rax, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xd6]
lea rdx, [rsp + 0x138]
mov qword [rdx + 0xa2], rax
mov qword [rdx + 0xa8], rcx
mov r13d, dword [rsp + 0x38]
mov word [rsp + 0x1ea], r13w
mov dword [rsp + 0x130], r12d
mov rax, qword [rsp + 0x40]
mov dword [rsp + 0x134], eax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x138], rax
mov qword [rsp + 0x140], rsi
mov r8d, 0x90
lea rcx, [rsp + 0x148]
mov rdx, r15
call fcn.1400ca0a0
mov word [rsp + 0x1d8], bp
mov word [rsp + 0x1e8], di
cmp bp, 0x1e
jne 0x1400583a9
mov esi, r12d
shr esi, 0x10
cmp r12b, 2
lea rdi, [rsp + 0x130]
jne 0x1400583fd
mov rcx, rbx
mov dl, 0xd
call fcn.1400587ec
test sil, sil
jne 0x140058421
jmp 0x140058472
mov word [rsp + 0x54], bp
mov r8d, 0xc0
lea rsi, [rsp + 0x298]
mov rcx, rsi
lea rdx, [rsp + 0x130]
call fcn.1400ca0a0
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r14
lea rcx, [rsp + 0x60]
mov rdx, rbx
mov r8, rsi
mov r9, qword [rsp + 0x58]
call fcn.140058836
mov r12b, byte [rsp + 0x60]
mov ebp, r13d
jmp 0x140058459
test sil, sil
je 0x140058472
test r12b, r12b
jne 0x140058421
cmp word [rbx + 0x120], 5
jne 0x140058479
cmp sil, 0x17
je 0x140058479
mov rcx, rbx
mov dl, 0x10
call fcn.1400587ec
shr r12d, 0x18
mov byte [rsp + 0x61], sil
mov byte [rsp + 0x62], r12b
mov byte [rsp + 0x60], 0xa
mov rcx, rdi
call fcn.14004a4c8
mov word [rsp + 0x54], 0x1e
mov r12b, 0xa
mov esi, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x58]
mov rdx, r14
call fcn.14005746d
mov ebp, esi
cmp r12b, 0x17
jne 0x1400584fd
mov r12, qword [rsp + 0x68]
mov r14, qword [rsp + 0x70]
jmp 0x1400575b1
mov byte [rbx + 0x12a], 1
mov r12, qword [rsp + 0x58]
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x70], r14
mov rcx, rdi
call fcn.14004a4c8
mov word [rsp + 0x54], 0x1e
mov eax, dword [rsp + 0x38]
mov ebp, eax
jmp 0x1400575b1
mov rcx, qword [rsp + 0x98]
call fcn.140057454
mov dil, 0x17
mov byte [rbx + 0x188], dil
mov qword [rbx + 0x190], r12
mov qword [rbx + 0x198], r14
lea rcx, [rbx + 0xa8]
call fcn.140056b50
mov rsi, rax
lea rcx, [rbx + 0x48]
call fcn.140056b50
mov cl, byte [rbx + 0x12a]
mov rdx, qword [rsp + 0xa0]
mov qword [rdx + 8], rsi
mov qword [rdx + 0x10], rax
mov byte [rdx + 0x18], cl
mov byte [rdx], dil
jmp 0x14005855d
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rsp + 0x70]
lea rdx, [rsp + 0x130]
movaps xmmword [rdx + 0x10], xmm1
movaps xmmword [rdx], xmm0
lea rsi, [rsp + 0x298]
mov rcx, rsi
call fcn.14005866c
mov rdi, qword [rsp + 0x98]
mov rcx, rdi
call fcn.140057454
movups xmm0, xmmword [rsi]
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [rdi + 0x10], xmm1
movups xmmword [rdi], xmm0
movups xmm0, xmmword [rsp + 0x60]
movups xmm1, xmmword [rsp + 0x70]
mov rax, qword [rsp + 0xa0]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
add rsp, 0x508
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret