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

Disassembly:
mov qword [rsp + 8], rcx
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x38
mov r10, qword [rcx + 0x28]
mov r14d, dword [rcx + 8]
mov rsi, qword [rcx]
mov r8, qword [rcx + 0x10]
mov ecx, dword [rcx + 0x18]
mov r9, qword [r10 + 0x58]
mov r12d, dword [r10 + 0x28]
mov ebx, dword [r10 + 0x38]
mov r11d, dword [r10 + 0x3c]
mov r15, qword [r10 + 0x50]
sub edx, ecx
dec r8
mov eax, edx
lea r13d, [rcx - 0x101]
mov ecx, dword [r10 + 0x60]
mov ebp, 1
dec rsi
add r14d, 0xfffffffb
mov rdx, r8
mov edi, ebp
add r13, r8
sub rdx, rax
mov eax, dword [r10 + 0x20]
add r14, rsi
mov qword [rsp + 0x18], rdx
mov edx, ebp
mov dword [rsp + 0x98], eax
mov eax, dword [r10 + 0x24]
shl edx, cl
mov ecx, dword [r10 + 0x64]
shl edi, cl
mov dword [rsp], eax
mov rax, qword [r10 + 0x30]
dec edi
dec edx
mov qword [rsp + 8], r10
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x10], r9
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x88], edi
nop dword [rax + rax]
cmp r11d, 0xf
jae 0x1400d4504
movzx eax, byte [rsi + 1]
mov ecx, r11d
add rsi, 2
shl eax, cl
lea ecx, [r11 + 8]
add ebx, eax
movzx eax, byte [rsi]
shl eax, cl
add ebx, eax
add r11d, 0x10
mov eax, ebx
and rax, rdx
mov r10d, dword [r15 + rax*4]
mov eax, r10d
movzx edx, r10b
shr eax, 8
movzx ecx, al
shr ebx, cl
sub r11d, ecx
test r10b, r10b
je 0x1400d455e
test dl, 0x10
jne 0x1400d456d
test dl, 0x40
jne 0x1400d484f
mov ecx, edx
shr r10d, 0x10
mov eax, ebp
shl eax, cl
dec eax
and eax, ebx
add eax, r10d
mov r10d, dword [r15 + rax*4]
mov eax, r10d
movzx edx, r10b
shr eax, 8
movzx ecx, al
shr ebx, cl
sub r11d, ecx
test r10b, r10b
jne 0x1400d4524
inc r8
shr r10d, 0x10
mov byte [r8], r10b
jmp 0x1400d483b
shr r10d, 0x10
and edx, 0xf
je 0x1400d459f
cmp r11d, edx
jae 0x1400d458d
movzx eax, byte [rsi + 1]
inc rsi
mov ecx, r11d
shl eax, cl
add ebx, eax
add r11d, 8
mov ecx, edx
mov eax, ebp
shl eax, cl
dec eax
and eax, ebx
shr ebx, cl
add r10d, eax
sub r11d, edx
cmp r11d, 0xf
jae 0x1400d45c3
movzx eax, byte [rsi + 1]
mov ecx, r11d
add rsi, 2
shl eax, cl
lea ecx, [r11 + 8]
add ebx, eax
movzx eax, byte [rsi]
shl eax, cl
add ebx, eax
add r11d, 0x10
mov eax, ebx
mov ecx, edi
and rcx, rax
mov edi, dword [r9 + rcx*4]
mov eax, edi
movzx edx, dil
mov dword [rsp + 0x90], edi
shr eax, 8
movzx ecx, al
shr ebx, cl
sub r11d, ecx
test dl, 0x10
jne 0x1400d462e
nop dword [rax + rax]
test dl, 0x40
jne 0x1400d487c
movzx eax, word [rsp + 0x92]
mov ecx, edx
mov edx, ebp
shl edx, cl
dec edx
and edx, ebx
add edx, eax
mov edi, dword [r9 + rdx*4]
mov eax, edi
movzx edx, dil
mov dword [rsp + 0x90], edi
shr eax, 8
movzx ecx, al
shr ebx, cl
sub r11d, ecx
test dl, 0x10
je 0x1400d45f0
and edx, 0xf
shr edi, 0x10
cmp r11d, edx
jae 0x1400d4662
movzx eax, byte [rsi + 1]
inc rsi
mov ecx, r11d
shl eax, cl
add r11d, 8
add ebx, eax
cmp r11d, edx
jae 0x1400d4662
movzx eax, byte [rsi + 1]
inc rsi
mov ecx, r11d
shl eax, cl
add ebx, eax
add r11d, 8
mov ecx, edx
mov eax, ebp
sub r11d, edx
shl eax, cl
dec eax
and eax, ebx
shr ebx, cl
add edi, eax
mov eax, r8d
sub eax, dword [rsp + 0x18]
cmp edi, eax
jbe 0x1400d47cc
mov ecx, edi
sub ecx, eax
cmp ecx, dword [rsp]
ja 0x1400d489c
mov rdx, qword [rsp + 0x20]
lea r9, [rdx - 1]
test r12d, r12d
jne 0x1400d46d4
mov eax, dword [rsp + 0x98]
sub eax, ecx
add r9, rax
cmp ecx, r10d
jae 0x1400d475a
sub r10d, ecx
nop word [rax + rax]
movzx eax, byte [r9 + 1]
inc r9
inc r8
dec ecx
mov byte [r8], al
jne 0x1400d46c0
jmp 0x1400d4752
mov eax, r12d
sub eax, ecx
cmp r12d, ecx
jae 0x1400d4734
add eax, dword [rsp + 0x98]
sub ecx, r12d
add r9, rax
cmp ecx, r10d
jae 0x1400d475a
sub r10d, ecx
sub r9, r8
nop word [rax + rax]
movzx eax, byte [r9 + r8 + 1]
inc r8
dec ecx
mov byte [r8], al
jne 0x1400d4700
lea r9, [rdx - 1]
cmp r12d, r10d
jae 0x1400d475a
mov ecx, r12d
sub r10d, r12d
nop
movzx eax, byte [r9 + 1]
inc r9
inc r8
dec ecx
mov byte [r8], al
jne 0x1400d4720
jmp 0x1400d4752
add r9, rax
cmp ecx, r10d
jae 0x1400d475a
sub r10d, ecx
nop
movzx eax, byte [r9 + 1]
inc r9
inc r8
dec ecx
mov byte [r8], al
jne 0x1400d4740
mov eax, edi
mov r9, r8
sub r9, rax
cmp r10d, 2
jbe 0x1400d479a
lea ecx, [r10 - 3]
mov eax, 0xaaaaaaab
mul ecx
shr edx, 1
lea ecx, [rdx + 1]
movzx eax, byte [r9 + 1]
add r9, 3
add r8, 3
mov byte [r8 - 2], al
movzx eax, byte [r9 - 1]
add r10d, 0xfffffffd
dec rcx
mov byte [r8 - 1], al
movzx eax, byte [r9]
mov byte [r8], al
jne 0x1400d4770
test r10d, r10d
je 0x1400d482f
movzx eax, byte [r9 + 1]
mov edi, dword [rsp + 0x88]
inc r8
mov byte [r8], al
cmp r10d, ebp
jbe 0x1400d47c5
movzx eax, byte [r9 + 2]
inc r8
mov byte [r8], al
mov r9, qword [rsp + 0x10]
jmp 0x1400d483b
mov eax, edi
mov rcx, r8
sub rcx, rax
nop word [rax + rax]
movzx eax, byte [rcx + 1]
add rcx, 3
add r8, 3
mov byte [r8 - 2], al
movzx eax, byte [rcx - 1]
add r10d, 0xfffffffd
mov byte [r8 - 1], al
movzx eax, byte [rcx]
mov byte [r8], al
cmp r10d, 2
ja 0x1400d47e0
test r10d, r10d
je 0x1400d4834
movzx eax, byte [rcx + 1]
mov edi, dword [rsp + 0x88]
inc r8
mov byte [r8], al
cmp r10d, ebp
jbe 0x1400d483b
movzx eax, byte [rcx + 2]
inc r8
mov byte [r8], al
jmp 0x1400d483b
mov r9, qword [rsp + 0x10]
mov edi, dword [rsp + 0x88]
cmp rsi, r14
jae 0x1400d48a5
cmp r8, r13
jae 0x1400d48a5
mov rdx, qword [rsp + 0x28]
jmp 0x1400d44e0
mov rdi, qword [rsp + 0x80]
test dl, 0x20
mov rdx, qword [rsp + 8]
je 0x1400d4869
mov dword [rdx], reloc.WS2_32.dll_inet_addr
jmp 0x1400d48b2
lea rax, str.invalid_literal_length_code
mov qword [rdi + 0x20], rax
mov dword [rdx], 0x1b
jmp 0x1400d48b2
lea rax, str.invalid_distance_code
mov rdi, qword [rsp + 0x80]
mov rdx, qword [rsp + 8]
mov qword [rdi + 0x20], rax
mov dword [rdx], 0x1b
jmp 0x1400d48b2
lea rax, str.invalid_distance_too_far_back
jmp 0x1400d4883
mov rdx, qword [rsp + 8]
mov rdi, qword [rsp + 0x80]
mov ecx, r11d
shr ecx, 3
mov eax, ecx
sub rsi, rax
lea eax, [rcx*8]
sub r11d, eax
lea rax, [rsi + 1]
sub r14, rsi
mov qword [rdi], rax
lea rax, [r8 + 1]
mov ecx, r11d
mov qword [rdi + 0x10], rax
shl ebp, cl
lea rax, [r14 + 5]
mov dword [rdi + 8], eax
dec ebp
and ebx, ebp
sub r13, r8
lea rax, [r13 + 0x101]
mov dword [rdi + 0x18], eax
mov dword [rdx + 0x38], ebx
mov dword [rdx + 0x3c], r11d
add rsp, 0x38
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret