Function at 0x14003b760
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, 0x1f8
mov rbx, r9
mov r14, r8
mov rdi, rdx
mov rsi, rcx
cmp dword [rdx + 0x40], 2
jne 0x14003b9b3
mov dword [rdi + 0x40], 2
cmp dword [rdi], 0
jne 0x14003befd
lea rax, [rdi + 4]
mov qword [rsp + 0x80], rax
cmp byte [rbx + 0x115], 3
jne 0x14003bd64
cmp qword [rbx + 0x120], 0xfffffffffffffef7
jae 0x14003bd64
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 + 0xd4], xmm0
movups xmmword [rsp + 0xe4], xmm1
movups xmmword [rsp + 0xf4], xmm2
mov qword [rsp + 0x104], rcx
mov byte [rsp + 0x10c], al
mov byte [rsp + 0xd0], 4
add rbx, 0x28
lea r14, [rsp + 0xd0]
mov rcx, rbx
mov rdx, r14
call fcn.140006d60
cmp al, 0xc
jne 0x14003c00f
mov rax, qword [0x1405085d0]
mov rax, qword [rax]
test rax, rax
je 0x14003bdc0
mov rax, qword [0x1405085f0]
movzx eax, byte [rax]
test al, al
jne 0x14003bec9
mov rax, qword [0x140508698]
mov rax, qword [rax]
cmp rax, 5
jne 0x14003bec9
mov r13, qword [0x140507260]
mov rbx, qword [r13]
movups xmm0, xmmword [rbx + 0x20]
mov qword [rsp + 0x88], 5
movups xmmword [rsp + 0x90], xmm0
call fcn.1401e1d10
mov r15, rax
mov r12, rdx
lea rdx, [rsp + 0x88]
mov rcx, rax
call qword [r12 + 0x18]
test al, al
je 0x14003bec9
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0xa0], xmm0
mov rcx, qword [r13]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x14003c072
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movups xmm0, xmmword [rcx + 0x40]
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rax
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], 0
lea rax, [rsp + 0x80]
mov qword [rsp + 0xc0], rax
lea rax, [0x14004e440]
mov qword [rsp + 0xc8], rax
lea rax, str.local_settings_sent__waiting_for_ack:
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], 1
mov qword [rsp + 0xf0], 0
lea rax, [rsp + 0xc0]
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 1
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r14
lea rax, [0x14036a6b0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 1
mov qword [rsp + 0x38], rdx
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xa0]
mov rcx, rbx
mov rdx, r15
mov r8, r12
call fcn.1401a3540
jmp 0x14003bec9
cmp byte [rbx + 0x115], 3
jne 0x14003bbbf
cmp qword [rbx + 0x120], 0xfffffffffffffef7
jae 0x14003bbbf
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 dword [rsp + 0x104], 0
mov byte [rsp + 0x10c], 1
mov byte [rsp + 0xd0], 4
lea r15, [rbx + 0x28]
lea r12, [rsp + 0xd0]
mov rcx, r15
mov rdx, r12
call fcn.140006d60
cmp al, 0xc
jne 0x14003bfff
mov rax, qword [0x1405085d0]
mov rax, qword [rax]
test rax, rax
je 0x14003bbff
mov rax, qword [0x1405085f0]
movzx eax, byte [rax]
test al, al
jne 0x14003bcde
mov rax, qword [0x140508698]
mov rax, qword [rax]
cmp rax, 5
jne 0x14003bcde
mov rax, qword [0x140507258]
mov rax, qword [rax]
mov qword [rsp + 0xb8], rax
movups xmm0, xmmword [rax + 0x20]
mov qword [rsp + 0x88], 5
movups xmmword [rsp + 0x90], xmm0
call fcn.1401e1d10
mov rbp, rax
mov r13, rdx
lea rdx, [rsp + 0x88]
mov rcx, rax
call qword [r13 + 0x18]
test al, al
je 0x14003bcde
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0xb0], rax
movups xmm0, xmmword [rsp + 0x88]
movaps xmmword [rsp + 0xa0], xmm0
mov rax, qword [0x140507258]
mov rcx, qword [rax]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x14003c05a
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movups xmm0, xmmword [rcx + 0x40]
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rax
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], 0
lea rax, str.ACK_sent__applying_settings
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], 1
lea rax, [0x14036a530]
mov qword [rsp + 0xe0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xe8], xmm0
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r12
lea rax, [0x14036a6b0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 1
mov qword [rsp + 0x38], rdx
lea rax, [rsp + 0x28]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xa0]
mov rcx, qword [rsp + 0xb8]
mov rdx, rbp
mov r8, r13
call fcn.1401a3540
jmp 0x14003bcde
mov rcx, rbx
mov rdx, r14
call fcn.14000a890
test rax, rax
jne 0x14003bda4
test rdx, rdx
jne 0x14003bda4
cmp byte [rbx + 0x115], 3
jne 0x14003bf7d
cmp qword [rbx + 0x120], 0xfffffffffffffef7
jb 0x14003b9d1
jmp 0x14003bf7d
mov r13, qword [0x140507258]
movzx edx, byte [r13 + 0x10]
test dl, dl
je 0x14003ba60
movzx eax, dl
cmp eax, 1
je 0x14003bc26
cmp eax, 2
jne 0x14003bfc9
mov dl, 2
mov rcx, qword [r13]
call fcn.1401a3520
test al, al
je 0x14003ba60
mov rcx, qword [r13]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x14003c05a
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movups xmm0, xmmword [rcx + 0x40]
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rax
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], 0
lea rax, str.ACK_sent__applying_settings
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], 1
lea rax, [0x14036a530]
mov qword [rsp + 0xe0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xe8], xmm0
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r12
lea rax, [0x14036a6b0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 1
mov qword [rsp + 0x38], rdx
lea rcx, [rsp + 0x28]
call fcn.14003c140
mov rdx, qword [rsp + 0x260]
lea r12, [rdi + 0x40]
lea rcx, [rsp + 0x58]
mov r8, r12
call fcn.1400b1280
cmp byte [rsp + 0x58], 3
jne 0x14003bd34
cmp dword [r12], 0
je 0x14003bfa6
mov eax, dword [rdi + 0x44]
mov rcx, qword [r15]
test rcx, rcx
je 0x14003bf3e
cmp ecx, 1
jne 0x14003bf5d
cmp qword [rbx + 0x30], rax
jbe 0x14003bf97
lea rcx, [rbx + 0x30]
jmp 0x14003bf54
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0xf0], rax
movups xmm0, xmmword [rsp + 0x58]
movups xmm1, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0xe0], xmm1
movaps xmmword [rsp + 0xd0], xmm0
mov qword [rsi + 0x20], rax
jmp 0x14003bf35
mov rcx, rbx
mov rdx, r14
call fcn.14000a890
test rax, rax
jne 0x14003bf02
test rdx, rdx
jne 0x14003bf02
cmp byte [rbx + 0x115], 3
jne 0x14003bf7d
cmp qword [rbx + 0x120], 0xfffffffffffffef7
jb 0x14003b7c3
jmp 0x14003bf7d
test rax, rax
jne 0x14003bdb2
test rdx, rdx
jne 0x14003bf0c
test rax, rax
jne 0x14003bf7d
jmp 0x14003b9d1
mov rbx, qword [0x140507260]
movzx edx, byte [rbx + 0x10]
test dl, dl
je 0x14003b838
movzx eax, dl
cmp eax, 1
je 0x14003bde6
cmp eax, 2
jne 0x14003bfe4
mov dl, 2
mov rcx, qword [rbx]
call fcn.1401a3520
test al, al
je 0x14003b838
mov rcx, qword [rbx]
mov rax, qword [rcx + 0x38]
test rax, rax
je 0x14003c072
lea rdx, [rcx + 0x30]
mov r8, qword [rcx + 0x30]
movups xmm0, xmmword [rcx + 0x40]
mov qword [rsp + 0x58], r8
mov qword [rsp + 0x60], rax
movups xmmword [rsp + 0x68], xmm0
mov qword [rsp + 0x78], 0
lea rax, [rsp + 0x80]
mov qword [rsp + 0xa0], rax
lea rax, [0x14004e440]
mov qword [rsp + 0xa8], rax
lea rax, str.local_settings_sent__waiting_for_ack:
mov qword [rsp + 0xd0], rax
mov qword [rsp + 0xd8], 1
mov qword [rsp + 0xf0], 0
lea rax, [rsp + 0xa0]
mov qword [rsp + 0xe0], rax
mov qword [rsp + 0xe8], 1
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], r14
lea rax, [0x14036a6b0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x30], 1
mov qword [rsp + 0x38], rdx
lea rcx, [rsp + 0x28]
call fcn.14003c090
mov rax, qword [rsp + 0x80]
movzx ecx, byte [rax + 0x38]
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
movups xmm2, xmmword [rax + 0x20]
mov rax, qword [rax + 0x30]
mov dword [rdi], 1
movups xmmword [rdi + 4], xmm0
movups xmmword [rdi + 0x14], xmm1
movups xmmword [rdi + 0x24], xmm2
mov qword [rdi + 0x34], rax
mov byte [rdi + 0x3c], cl
mov byte [rsi], 3
jmp 0x14003bf80
test rax, rax
jne 0x14003bf74
test rdx, rdx
je 0x14003bf74
lea rcx, [rsp + 0xd0]
call fcn.140157920
mov rax, qword [rsp + 0xf0]
mov qword [rsi + 0x20], rax
movups xmm0, xmmword [rsp + 0xd0]
movups xmm1, xmmword [rsp + 0xe0]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
jmp 0x14003bf80
lea rcx, [rbx + 0x30]
mov rdx, qword [rbx + 0x30]
cmp rdx, rax
jae 0x14003bf54
cmp rdx, qword [rbx + 0x90]
jbe 0x14003bf97
mov qword [r15], 0
jmp 0x14003bfa3
cmp qword [rbx + 0x90], rax
je 0x14003bfa6
mov qword [rbx + 0x28], 0
lea rcx, [rbx + 0x30]
jmp 0x14003bfa3
test rax, rax
je 0x14003b7c3
mov byte [rsi], 4
mov rax, rsi
add rsp, 0x1f8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rbx + 0x28], 1
lea rcx, [rbx + 0x38]
mov qword [rcx], rax
cmp dword [rdi + 0x60], 0
je 0x14003b789
mov eax, dword [rdi + 0x64]
cmp eax, 0x1000000
jae 0x14003c042
mov dword [rbx + 0x140], eax
jmp 0x14003b789
mov rcx, qword [0x140507258]
call fcn.14035d0a0
mov edx, eax
test al, al
jne 0x14003bc26
jmp 0x14003ba60
mov rcx, qword [0x140507260]
call fcn.14035d0a0
mov edx, eax
test al, al
jne 0x14003bde6
jmp 0x14003b838
mov byte [rsp + 0xd0], al
lea rax, [0x14036ad18]
jmp 0x14003c01d
mov byte [rsp + 0xd0], al
lea rax, [0x14036ae38]
mov qword [rsp + 0x20], rax
lea rcx, str.invalid_settings_frame
lea r9, [0x14036b0a8]
lea r8, [rsp + 0xd0]
mov edx, 0x16
call fcn.140365350
lea rcx, str.assertion_failed:_val___frame::MAX_MAX_FRAME_SIZE_as_usizeC:UsersTony_Stark.cargo_registry_srcindex.crates.io_6f17d22bba15001fh2_0.3.20_srccodec_framed_write.rs
lea r8, [0x14036ae20]
mov edx, 0x3b
call fcn.140364f80
lea rcx, str.FieldSet_corrupted__this_is_a_bug_C:UsersTony_Stark.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_util_0.7.8_srccodec_framed_impl.rs
lea r8, [0x14036ad30]
mov edx, 0x22
call fcn.140364e90
lea rcx, str.FieldSet_corrupted__this_is_a_bug_C:UsersTony_Stark.cargo_registry_srcindex.crates.io_6f17d22bba15001f_tokio_util_0.7.8_srccodec_framed_impl.rs
lea r8, [0x14036ae50]
mov edx, 0x22
call fcn.140364e90
int3