Function at 0x1400496c0
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, 0x1e8
mov rbx, r9
mov r14, r8
mov rdi, rdx
mov rsi, rcx
cmp dword [rdx + 0x40], 2
jne 0x1400496fd
mov dword [rdi + 0x40], 2
cmp dword [rdi], 0
je 0x140049984
mov byte [rsi], 3
jmp 0x140049a03
lea r15, [rbx + 0x48]
cmp dword [rbx + 0x100], 4
jne 0x140049721
mov rax, qword [rbx + 0x158]
sub rax, qword [rbx + 0x150]
cmp rax, qword [rbx + 0x178]
jae 0x140049766
mov rcx, r15
mov rdx, r14
call fcn.14002f2e0
test rax, rax
jne 0x1400499c5
test rdx, rdx
jne 0x1400499fb
cmp dword [rbx + 0x100], 4
jne 0x1400499c5
mov rax, qword [rbx + 0x158]
sub rax, qword [rbx + 0x150]
cmp rax, qword [rbx + 0x178]
jb 0x1400499c5
mov dword [rsp + 0xcc], 0
mov dword [rsp + 0xd4], 0
mov dword [rsp + 0xdc], 0
mov dword [rsp + 0xe4], 0
mov dword [rsp + 0xec], 0
mov dword [rsp + 0xf4], 0
mov dword [rsp + 0xfc], 0
mov byte [rsp + 0x104], 1
mov byte [rsp + 0xc8], 4
lea r12, [rsp + 0xc8]
mov qword [rsp + 0xa0], r15
mov rcx, r15
mov rdx, r12
call fcn.14002de90
cmp al, 0xc
jne 0x140049e5c
mov rax, qword [0x1402514c8]
mov rax, qword [rax]
test rax, rax
je 0x140049a1a
mov rax, qword [rsp + 0x250]
mov r15, qword [rax]
mov r13, qword [rax + 8]
lea r12, [r15 + 0x10]
mov rcx, r12
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [0x140251c00]
mov rax, qword [rax]
shl rax, 1
test rax, rax
jne 0x140049d5a
mov dword [rsp + 0x3c], 0
movzx eax, byte [r15 + 0x18]
test al, al
jne 0x140049d72
mov qword [rsp + 0xb0], r12
movabs r12, 0x7fffffffffffffff
lea rbp, [r13 + 0x10]
mov rcx, rbp
call sub.KERNEL32.dll_AcquireSRWLockExclusive
mov rax, qword [0x140251c00]
mov rax, qword [rax]
test rax, r12
jne 0x140049daa
xor r12d, r12d
movzx eax, byte [r13 + 0x18]
test al, al
jne 0x140049dc3
lea r8, [rdi + 0x40]
cmp dword [rdi + 0x50], 0
je 0x140049891
mov eax, dword [rdi + 0x54]
mov qword [r15 + 0x30], rax
lea rax, [r15 + 0x20]
lea r9, [r13 + 0x20]
lea rdx, [r15 + 0x120]
lea rcx, [r15 + 0x1d0]
lea r10, [r15 + 0x1c0]
mov qword [rsp + 0x30], r10
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0xc8]
mov qword [rsp + 0xa8], r8
call fcn.140098290
test r12b, r12b
jne 0x1400498f4
mov rax, qword [0x140251c00]
mov rax, qword [rax]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x140049df8
mov rcx, rbp
call sub.KERNEL32.dll_ReleaseSRWLockExclusive
cmp byte [rsp + 0x3c], 0
mov r12, qword [rsp + 0xb0]
jne 0x140049928
mov rax, qword [0x140251c00]
mov rax, qword [rax]
movabs rcx, 0x7fffffffffffffff
test rax, rcx
jne 0x140049e0f
mov rcx, r12
call sub.KERNEL32.dll_ReleaseSRWLockExclusive
movzx eax, byte [rsp + 0xc8]
cmp al, 3
jne 0x1400499ca
mov rax, qword [rsp + 0xa8]
cmp dword [rax], 0
je 0x140049d37
mov eax, dword [rdi + 0x44]
mov r8, qword [rsp + 0xa0]
mov rcx, qword [r8]
test rcx, rcx
je 0x140049cf2
cmp ecx, 1
jne 0x140049d11
cmp qword [rbx + 0x50], rax
jbe 0x140049d28
lea rcx, [rbx + 0x50]
jmp 0x140049d08
lea r12, [rdi + 4]
mov qword [rsp + 0x68], r12
lea r15, [rbx + 0x48]
cmp dword [rbx + 0x100], 4
jne 0x1400499b5
mov rax, qword [rbx + 0x158]
sub rax, qword [rbx + 0x150]
cmp rax, qword [rbx + 0x178]
jae 0x140049b33
mov rcx, r15
mov rdx, r14
call fcn.14002f2e0
test rax, rax
je 0x1400499f2
mov byte [rsi], 4
jmp 0x140049a03
mov rcx, qword [rsp + 0xe8]
mov qword [rsi + 0x20], rcx
movups xmm0, xmmword [rsp + 0xc9]
movups xmm1, xmmword [rsp + 0xd9]
movups xmmword [rsi + 0x11], xmm1
movups xmmword [rsi + 1], xmm0
mov byte [rsi], al
jmp 0x140049a03
test rdx, rdx
je 0x140049b0b
mov rcx, rsi
call fcn.140100de0
mov rax, rsi
add rsp, 0x1e8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r15, qword [0x1402510e8]
movzx edx, byte [r15 + 0x10]
test dl, dl
je 0x1400497f9
movzx eax, dl
cmp eax, 1
je 0x140049a41
cmp eax, 2
jne 0x140049e26
mov dl, 2
mov rcx, qword [r15]
call fcn.14011c7d0
test al, al
je 0x1400497f9
mov rcx, qword [r15]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x140049ebb
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movups xmm0, xmmword [rcx + 0x40]
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], rax
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 0
lea rax, str.ACK_sent__applying_settings
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], 1
lea rax, [0x14025a510]
mov qword [rsp + 0xd8], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xe0], xmm0
lea rax, [rsp + 0x40]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], r12
lea rax, [0x14025a640]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], 1
mov qword [rsp + 0x98], rdx
lea rdx, [rsp + 0x88]
call fcn.140121540
jmp 0x1400497f9
cmp dword [rbx + 0x100], 4
jne 0x1400499c5
mov rax, qword [rbx + 0x158]
sub rax, qword [rbx + 0x150]
cmp rax, qword [rbx + 0x178]
jb 0x1400499c5
movzx eax, byte [rdi + 0x3c]
movups xmm0, xmmword [rdi + 4]
movups xmm1, xmmword [rdi + 0x14]
movups xmm2, xmmword [rdi + 0x24]
mov rcx, qword [rdi + 0x34]
movups xmmword [rsp + 0xcc], xmm0
movups xmmword [rsp + 0xdc], xmm1
movups xmmword [rsp + 0xec], xmm2
mov qword [rsp + 0xfc], rcx
mov byte [rsp + 0x104], al
mov byte [rsp + 0xc8], 4
lea rbx, [rsp + 0xc8]
mov rcx, r15
mov rdx, rbx
call fcn.14002de90
cmp al, 0xc
jne 0x140049e6c
mov rax, qword [0x1402514c8]
mov rax, qword [rax]
test rax, rax
je 0x140049bda
movzx eax, byte [r12 + 0x38]
movups xmm0, xmmword [r12]
movups xmm1, xmmword [r12 + 0x10]
movups xmm2, xmmword [r12 + 0x20]
mov rcx, qword [r12 + 0x30]
mov dword [rdi], 1
movups xmmword [rdi + 4], xmm0
movups xmmword [rdi + 0x14], xmm1
movups xmmword [rdi + 0x24], xmm2
mov qword [rdi + 0x34], rcx
mov byte [rdi + 0x3c], al
jmp 0x1400496f5
mov r14, qword [0x1402510f8]
movzx edx, byte [r14 + 0x10]
test dl, dl
je 0x140049ba0
movzx eax, dl
cmp eax, 1
je 0x140049bfd
cmp eax, 2
jne 0x140049e41
mov dl, 2
mov rcx, qword [r14]
call fcn.14011c7d0
test al, al
je 0x140049ba0
mov rcx, qword [r14]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x140049ed5
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movups xmm0, xmmword [rcx + 0x40]
mov qword [rsp + 0x40], r8
mov qword [rsp + 0x48], rax
movups xmmword [rsp + 0x50], xmm0
mov qword [rsp + 0x60], 0
lea rax, [rsp + 0x68]
mov qword [rsp + 0xb8], rax
lea rax, [0x14000f430]
mov qword [rsp + 0xc0], rax
lea rax, str.local_settings_sent__waiting_for_ack:
mov qword [rsp + 0xc8], rax
mov qword [rsp + 0xd0], 1
mov qword [rsp + 0xe8], 0
lea rax, [rsp + 0xb8]
mov qword [rsp + 0xd8], rax
mov qword [rsp + 0xe0], 1
lea rax, [rsp + 0x40]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rbx
lea rax, [0x14025a640]
mov qword [rsp + 0x80], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x90], 1
mov qword [rsp + 0x98], rdx
lea rdx, [rsp + 0x88]
call fcn.140121540
mov r12, qword [rsp + 0x68]
jmp 0x140049ba0
lea rcx, [rbx + 0x50]
mov rdx, qword [rbx + 0x50]
cmp rdx, rax
jae 0x140049d08
cmp rdx, qword [rbx + 0xb0]
jbe 0x140049d28
mov qword [r8], 0
jmp 0x140049d34
cmp qword [rbx + 0xb0], rax
je 0x140049d37
mov qword [rbx + 0x48], 0
lea rcx, [rbx + 0x50]
jmp 0x140049d34
mov qword [rbx + 0x48], 1
lea rcx, [rbx + 0x58]
mov qword [rcx], rax
cmp dword [rdi + 0x60], 0
je 0x1400496e5
mov eax, dword [rdi + 0x64]
cmp eax, 0x1000000
jae 0x140049ea1
mov dword [rbx + 0x180], eax
jmp 0x1400496e5
call fcn.1401ed690
xor al, 1
mov dword [rsp + 0x3c], eax
movzx eax, byte [r15 + 0x18]
test al, al
je 0x14004983f
mov qword [rsp + 0x40], r12
mov eax, dword [rsp + 0x3c]
mov byte [rsp + 0x48], al
lea rax, [0x14025aa78]
mov qword [rsp + 0x20], rax
lea rcx, [0x14025b878]
lea r9, [0x14025b8c8]
lea r8, [rsp + 0x40]
mov edx, 0x2b
call fcn.1402363e0
ud2
call fcn.1401ed690
mov r12d, eax
xor r12b, 1
movzx eax, byte [r13 + 0x18]
test al, al
je 0x140049880
mov qword [rsp + 0x40], rbp
mov byte [rsp + 0x48], r12b
lea rax, [0x14025aa90]
mov qword [rsp + 0x20], rax
lea rcx, [0x14025b878]
lea r9, [0x14025b8a8]
lea r8, [rsp + 0x40]
mov edx, 0x2b
call fcn.1402363e0
ud2
call fcn.1401ed690
test al, al
jne 0x1400498f4
mov byte [r13 + 0x18], 1
jmp 0x1400498f4
call fcn.1401ed690
test al, al
jne 0x140049928
mov byte [r15 + 0x18], 1
jmp 0x140049928
mov rcx, qword [0x1402510e8]
call fcn.14011cfc0
mov edx, eax
test al, al
jne 0x140049a41
jmp 0x1400497f9
mov rcx, qword [0x1402510f8]
call fcn.14011cfc0
mov edx, eax
test al, al
jne 0x140049bfd
jmp 0x140049ba0
mov byte [rsp + 0xc8], al
lea rax, [0x14025b5e0]
jmp 0x140049e7a
mov byte [rsp + 0xc8], al
lea rax, [0x14025b708]
mov qword [rsp + 0x20], rax
lea rcx, str.invalid_settings_frame
lea r9, [0x14025b858]
lea r8, [rsp + 0xc8]
mov edx, 0x16
call fcn.1402363e0
ud2
lea rcx, str.assertion_failed:_val___frame::MAX_MAX_FRAME_SIZE_as_usize_home_admin_.local_share_cargo_registry_src_index.crates.io_6f17d22bba15001f_h2_0.3.24_src_codec_framed_write.rs
lea r8, [0x14025b6f0]
mov edx, 0x3b
call fcn.140235da0
ud2
lea rcx, [0x14025a5c8]
lea r8, [0x14025b5f8]
mov edx, 0x22
call fcn.140235a80
ud2
lea rcx, [0x14025a5c8]
lea r8, [0x14025b720]
mov edx, 0x22
call fcn.140235a80
ud2