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

Disassembly:
mov byte [rsp + 0x10], dl
mov byte [rsp + 8], cl
sub rsp, 0xc8
movsx rax, word [0x1401779c0]
mov qword [rsp + 0x88], rax
movsxd rax, dword [0x140177980]
mov qword [rsp + 0x90], rax
mov eax, 0xffffffcb
mov word [rsp + 0x48], ax
mov eax, 0xbbae
mov word [rsp + 0x10], ax
mov dword [rsp + 0x50], 0x6d715a18
mov byte [rsp], 0xf2
mov eax, 0xd8
mov word [rsp + 0x14], ax
movzx eax, word [0x14017798c]
mov qword [rsp + 0x98], rax
mov eax, 0x41
mov word [rsp + 0xc], ax
movzx eax, word [0x1401779d4]
movzx eax, ax
mov dword [rsp + 0x54], eax
mov byte [rsp + 1], 0x48
mov dword [rsp + 0x68], 0x680f12aa
movzx eax, word [0x140177988]
mov byte [rsp + 5], al
movzx eax, byte [0x1401779f8]
mov byte [rsp + 2], al
mov byte [rsp + 6], 0x2a
mov rax, qword [0x1401779d8]
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x44], 0x26
mov dword [rsp + 0x18], 0xf0
mov byte [rsp + 3], 0xf8
mov dword [rsp + 0x6c], 0x72f5e723
movzx eax, word [0x14017798c]
mov qword [rsp + 0xa0], rax
mov byte [rsp + 7], 0x5b
movzx eax, byte [0x1401778cf]
movsx rax, al
mov qword [rsp + 0x60], rax
movsxd rax, dword [0x1401779c4]
mov qword [rsp + 0x80], rax
mov eax, dword [0x140177990]
mov dword [rsp + 0x70], eax
mov eax, dword [0x140177984]
mov dword [rsp + 0x74], eax
mov rax, qword [0x1401779c8]
mov byte [rsp + 8], al
mov eax, 0xffff92b4
mov word [rsp + 0x4c], ax
movsxd rax, dword [0x140177980]
mov qword [rsp + 0xa8], rax
mov eax, 0x32dc
mov word [rsp + 0x58], ax
mov qword [rsp + 0xb0], 0x2ec67e04
mov eax, dword [0x1401779a8]
mov byte [rsp + 4], al
movzx eax, byte [0x1401778cf]
movsx eax, al
mov dword [rsp + 0x78], eax
movzx eax, word [0x14017798c]
mov qword [rsp + 0xb8], rax
mov dword [rsp + 0x7c], 0x7b
mov byte [rsp + 9], 0x6d
mov eax, dword [0x1401779c4]
sub eax, 0xce65
mov word [0x1401779ec], ax
movzx eax, word [0x1401779fc]
movzx ecx, word [rsp + 0xc]
xor eax, ecx
cdqe
movzx ecx, word [0x1401779a4]
movzx ecx, cx
movabs rdx, 0x26179abd58e5
sub rdx, rcx
mov rcx, rdx
add rax, rcx
mov ecx, dword [0x1401779a8]
mov ecx, ecx
movsxd rdx, dword [rsp + 0x50]
mov r8, qword [rsp + 0x20]
add rdx, r8
sub rcx, rdx
not rcx
add rax, rcx
mov byte [rsp], al
movzx eax, word [0x140ecf768]
mov word [0x1401779f8], ax
mov eax, dword [0x1401779b4]
test eax, eax
jne 0x14009f3a7
mov dword [rsp + 0x30], 1
jmp 0x14009f3af
mov dword [rsp + 0x30], 0
mov eax, dword [0x1401779a8]
test eax, eax
je 0x14009f3cd
mov eax, dword [rsp + 0x54]
not eax
test eax, eax
je 0x14009f3cd
mov dword [rsp + 0x34], 0
jmp 0x14009f3d5
mov dword [rsp + 0x34], 1
movsx eax, byte [rsp + 1]
mov ecx, dword [rsp + 0x30]
sub ecx, eax
mov eax, ecx
cmp eax, dword [rsp + 0x34]
jne 0x14009f3f2
mov dword [rsp + 0x38], 1
jmp 0x14009f3fa
mov dword [rsp + 0x38], 0
movzx eax, byte [rsp + 2]
movzx eax, al
mov ecx, dword [rsp + 0x38]
not ecx
cmp eax, ecx
je 0x14009f416
mov dword [rsp + 0x3c], 1
jmp 0x14009f41e
mov dword [rsp + 0x3c], 0
mov eax, dword [rsp + 0x3c]
not eax
test eax, eax
je 0x14009f449
mov eax, 0xc2
mov word [0x1401779fc], ax
mov eax, dword [0x14017799c]
xor eax, 4
mov eax, eax
mov qword [rsp + 0x20], rax
jmp 0x14009f4f2
mov rax, qword [rsp + 0x60]
test rax, rax
je 0x14009f481
movzx eax, byte [0x140177936]
movsx eax, al
movzx ecx, word [rsp + 0x10]
sub eax, ecx
mov byte [0x140177936], al
mov dword [rsp + 0x44], 8
mov eax, dword [rsp + 0x80]
mov dword [0x1401779b4], eax
jmp 0x14009f4f2
mov eax, dword [rsp + 0x18]
test eax, eax
jne 0x14009f49d
mov eax, dword [rsp + 0x18]
not eax
test eax, eax
jne 0x14009f49d
mov dword [rsp + 0x40], 1
jmp 0x14009f4a5
mov dword [rsp + 0x40], 0
mov eax, dword [rsp + 0x40]
cmp dword [rsp + 0x44], eax
jbe 0x14009f4f2
movzx eax, byte [0x140177937]
movsx eax, al
sar eax, 1
mov dword [0x140177998], eax
movzx eax, byte [rsp]
movsx eax, al
mov ecx, dword [0x1401779a8]
add ecx, eax
mov eax, ecx
mov eax, eax
movsx rcx, byte [0x140177933]
movabs rdx, 0xfff7f59a18491fdf
xor rcx, rdx
sub rax, rcx
mov byte [0x14017791b], al
movzx eax, byte [rsp + 3]
movsx eax, al
add eax, 0xb385
mov dword [0x1401779c4], eax
movzx eax, byte [0x140177906]
movsx eax, al
movsx ecx, byte [0x140177905]
add eax, ecx
cdqe
mov qword [rsp + 0x20], rax
mov eax, dword [0x140177984]
mov ecx, dword [0x1401779d0]
sub ecx, eax
mov eax, ecx
mov dword [0x1401779d0], eax
mov rax, qword [rsp + 0x20]
movzx ecx, word [rsp + 0x14]
movzx ecx, cx
cmp rax, rcx
jl 0x14009f551
mov dword [rsp + 0x2c], 1
jmp 0x14009f559
mov dword [rsp + 0x2c], 0
mov rax, qword [rsp + 0x20]
cmp rax, 0x50
jl 0x14009f56e
mov dword [rsp + 0x28], 1
jmp 0x14009f576
mov dword [rsp + 0x28], 0
mov eax, dword [rsp + 0x28]
cmp dword [rsp + 0x2c], eax
jl 0x14009f5c4
movzx eax, word [0x14017798c]
imul eax, eax, 0x87446e5
mov byte [0x140177906], al
movsx eax, byte [str.Jinvalid_window_siz]
mov ecx, dword [0x1401779d0]
imul ecx, eax
mov eax, ecx
mov dword [0x1401779d0], eax
mov rax, qword [rsp + 0x20]
movabs rcx, 0xb6f22650f641
sub rax, rcx
mov qword [rsp + 0x60], rax
jmp 0x14009f60b
movzx eax, word [0x1401779ec]
movzx eax, ax
movzx ecx, word [0x14017798c]
cmp eax, ecx
jne 0x14009f60b
movzx eax, word [0x140177988]
cwde
mov ecx, dword [rsp + 0x18]
and ecx, eax
mov eax, ecx
mov byte [0x140177937], al
movzx eax, byte [0x1401778f7]
movsx eax, al
movzx ecx, word [0x1401779d4]
movzx ecx, cx
sub eax, ecx
mov byte [0x1401778f7], al
movzx eax, byte [rsp + 4]
add rsp, 0xc8
ret