Function at 0x14002a320
Capabilities:
Parse pe header

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x290]
sub rsp, 0x390
mov rax, qword [0x14010d0c0]
xor rax, rsp
mov qword [rbp + 0x280], rax
mov rdi, r8
mov qword [rsp + 0x40], r8
mov r12, rdx
mov r15, rcx
xor esi, esi
test rdx, rdx
je 0x14002a3c3
xorps xmm0, xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
movups xmmword [rbp + 0x50], xmm0
movups xmmword [rbp + 0x60], xmm0
lea r9d, [rsi + 0x40]
lea r8, [rbp + 0x30]
call fcn.1400264a0
test al, al
jne 0x14002a3ef
lea rdx, [r15 + 0x10]
lea rcx, [rbp - 0x58]
call fcn.1400165e0
lea rcx, [0x1400e7848]
mov qword [rsp + 0x38], 0x20
mov qword [rsp + 0x30], rcx
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
mov rdx, rax
lea rcx, [rsp + 0x30]
call fcn.140019140
xor eax, eax
mov rcx, qword [rbp + 0x280]
xor rcx, rsp
call fcn.1400a8a40
mov rbx, qword [rsp + 0x3e8]
add rsp, 0x390
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov eax, 0x5a4d
cmp word [rbp + 0x30], ax
jne 0x14002a3c3
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x70]
call fcn.1400d5800
movsxd rdx, dword [rbp + 0x6c]
add rdx, r12
mov r9d, 0x108
lea r8, [rbp + 0x70]
mov rcx, r15
call fcn.1400264a0
test al, al
jne 0x14002a44a
lea rdx, [r15 + 0x10]
lea rcx, [rbp - 0x58]
call fcn.1400165e0
lea rcx, [0x1400e7870]
mov qword [rsp + 0x38], 0x1f
jmp 0x14002a3a6
cmp dword [rbp + 0x70], 0x4550
jne 0x14002a3c3
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 8], xmm0
movups xmmword [rbp + 0x18], xmm0
mov qword [rbp + 0x28], rax
mov eax, dword [rbp + 0xf8]
add rax, r12
mov qword [rsp + 0x50], rax
mov ecx, dword [rbp + 0xfc]
add rcx, rax
mov qword [rsp + 0x30], rcx
mov r9d, 0x28
lea r8, [rbp + 8]
mov rdx, rax
mov rcx, r15
call fcn.1400264a0
test al, al
jne 0x14002a4b6
lea rdx, [r15 + 0x10]
lea rcx, [rbp - 0x58]
call fcn.1400165e0
lea rcx, [0x1400e7890]
jmp 0x14002a39d
mov eax, dword [rbp + 0x24]
add rax, r12
mov qword [rsp + 0x70], rax
mov eax, dword [rbp + 0x2c]
add rax, r12
mov qword [rsp + 0x68], rax
mov eax, dword [rbp + 0x28]
add rax, r12
mov qword [rsp + 0x60], rax
mov r14d, esi
cmp dword [rbp + 0x1c], esi
jbe 0x14002a3c3
movzx ebx, byte [rsp + 0x78]
nop dword [rax + rax]
mov dword [rbp - 0x80], esi
mov dword [rsp + 0x7c], esi
mov word [rsp + 0x78], si
movsxd r13, r14d
lea rdx, [rax + r13*4]
mov r9d, 4
lea r8, [rbp - 0x80]
mov rcx, r15
call fcn.1400264a0
test al, al
je 0x14002a64d
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x60], recv
mov byte [rbp - 0x78], 0
mov rdi, qword [rdi + 8]
test rdi, rdi
jne 0x14002a548
mov qword [rbp - 0x68], rdi
mov byte [rbp + rdi - 0x78], dil
jmp 0x14002a57b
lea rcx, [rbp - 0x78]
cmp rdi, 0xf
ja 0x14002a567
mov qword [rbp - 0x68], rdi
mov r8, rdi
xor edx, edx
call fcn.1400d5800
mov byte [rbp + rdi - 0x78], 0
jmp 0x14002a57b
mov byte [rsp + 0x20], 0
mov r9, rdi
movzx r8d, bl
mov rdx, rdi
call fcn.1400049a0
lea r8, [rbp - 0x78]
cmp qword [rbp - 0x60], 0xf
cmova r8, qword [rbp - 0x78]
mov edx, dword [rbp - 0x80]
add rdx, r12
mov r9, qword [rbp - 0x68]
mov rcx, r15
call fcn.1400264a0
test al, al
jne 0x14002a5e0
mov rdx, qword [rbp - 0x60]
cmp rdx, 0xf
jbe 0x14002a648
inc rdx
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a5d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a9d7
call fcn.1400a8dfc
jmp 0x14002a648
lea rdx, [rbp - 0x78]
mov rdi, qword [rbp - 0x78]
mov rsi, qword [rbp - 0x60]
cmp rsi, 0xf
cmova rdx, rdi
mov rcx, qword [rsp + 0x40]
mov r8, qword [rcx + 8]
cmp r8, qword [rbp - 0x68]
jne 0x14002a60f
mov rcx, qword [rcx]
call fcn.1400d5c40
test eax, eax
je 0x14002a664
cmp rsi, 0xf
jbe 0x14002a646
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14002a63e
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a9d7
mov rcx, rdi
call fcn.1400a8dfc
xor esi, esi
mov rdi, qword [rsp + 0x40]
inc r14d
cmp r14d, dword [rbp + 0x1c]
jae 0x14002a3c3
mov rax, qword [rsp + 0x60]
jmp 0x14002a4f0
mov rax, qword [rsp + 0x68]
lea rdx, [rax + r13*2]
mov r9d, 2
lea r8, [rsp + 0x78]
mov rcx, r15
call fcn.1400264a0
test al, al
je 0x14002a990
movzx eax, word [rsp + 0x78]
mov rcx, qword [rsp + 0x70]
lea rdx, [rcx + rax*4]
mov r9d, 4
lea r8, [rsp + 0x7c]
mov rcx, r15
call fcn.1400264a0
test al, al
je 0x14002a990
mov ebx, dword [rsp + 0x7c]
add rbx, r12
cmp rbx, qword [rsp + 0x50]
jb 0x14002a992
cmp rbx, qword [rsp + 0x30]
jae 0x14002a992
mov r9d, 0xff
lea r8, [rbp + 0x180]
mov rdx, rbx
mov rcx, r15
call fcn.1400264a0
xorps xmm0, xmm0
movups xmmword [rbp - 0x18], xmm0
mov qword [rbp - 8], 0
mov qword [rbp], 0
lea rax, [rbp + 0x180]
mov r12, 0xffffffffffffffff
mov r8, r12
nop
inc r8
cmp byte [rax + r8], 0
jne 0x14002a710
lea rdx, [rbp + 0x180]
lea rcx, [rbp - 0x18]
call fcn.140002ec0
nop
lea rbx, [rbp - 0x18]
mov rdi, qword [rbp - 0x18]
mov rsi, qword [rbp]
cmp rsi, 0xf
cmova rbx, rdi
mov r14, qword [rbp - 8]
test r14, r14
je 0x14002a959
mov r8, r14
mov edx, 0x2e
mov rcx, rbx
call fcn.1400d5ba0
test rax, rax
je 0x14002a959
sub rax, rbx
cmp rax, 0xffffffffffffffff
je 0x14002a959
xorps xmm0, xmm0
movups xmmword [rbp - 0x38], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x28], xmm1
lea r13, [rax + 1]
mov r8, r13
cmp r14, r13
cmovb r8, r14
lea rdx, [rbp - 0x18]
cmp rsi, 0xf
cmova rdx, rdi
lea rcx, [rbp - 0x38]
call fcn.140002ec0
nop
mov r8d, 3
lea rdx, [0x1400e78b4]
lea rcx, [rbp - 0x38]
call fcn.1400037c0
lea rdi, [rbp - 0x38]
mov r8, qword [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rdi, r8
lea rcx, [rbp - 0x38]
cmova rcx, r8
mov rsi, qword [rbp - 0x28]
add rsi, rcx
lea rbx, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rbx, r8
cmp rbx, rsi
je 0x14002a803
sub rdi, rbx
movsx ecx, byte [rbx]
call fcn.1400b77f4
mov byte [rbx + rdi], al
inc rbx
cmp rbx, rsi
jne 0x14002a7f0
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
xor edi, edi
mov qword [rbp - 0x48], rdi
mov qword [rbp - 0x40], rdi
mov rax, qword [rbp - 8]
cmp rax, r13
jb 0x14002a9dd
sub rax, r13
cmp rax, 0xffffffffffffffff
cmovb r12, rax
lea rdx, [rbp - 0x18]
cmp qword [rbp], 0xf
cmova rdx, qword [rbp - 0x18]
add rdx, r13
mov r8, r12
lea rcx, [rbp - 0x58]
call fcn.140002ec0
nop
lea rax, [rbp - 0x58]
cmp qword [rbp - 0x40], 0xf
cmova rax, qword [rbp - 0x58]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x48]
mov qword [rsp + 0x58], rax
lea rax, [rbp - 0x38]
cmp qword [rbp - 0x20], 0xf
cmova rax, qword [rbp - 0x38]
mov qword [rsp + 0x30], rax
mov rax, qword [rbp - 0x28]
mov qword [rsp + 0x38], rax
movaps xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x30], xmm0
lea rdx, [rsp + 0x30]
mov rcx, r15
call fcn.14002a9f0
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x30], xmm0
lea r8, [rsp + 0x30]
mov rdx, rax
mov rcx, r15
call fcn.14002a320
mov rbx, rax
mov rdx, qword [rbp - 0x40]
cmp rdx, 0xf
jbe 0x14002a8f3
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a8ee
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a9e3
call fcn.1400a8dfc
mov qword [rbp - 0x48], rdi
mov qword [rbp - 0x40], recv
mov byte [rbp - 0x58], 0
mov rdx, qword [rbp - 0x20]
cmp rdx, 0xf
jbe 0x14002a93e
inc rdx
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14002a939
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a9e9
call fcn.1400a8dfc
movdqa xmm0, xmmword [0x1400f71b0]
movdqu xmmword [rbp - 0x28], xmm0
mov byte [rbp - 0x38], 0
mov rsi, qword [rbp]
mov rdi, qword [rbp - 0x18]
jmp 0x14002a95b
xor ebx, ebx
cmp rsi, 0xf
jbe 0x14002a992
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14002a986
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002a9d1
mov rcx, rdi
call fcn.1400a8dfc
jmp 0x14002a992
xor ebx, ebx
mov rdx, qword [rbp - 0x60]
cmp rdx, 0xf
jbe 0x14002a9c9
inc rdx
mov rcx, qword [rbp - 0x78]
mov r8, rcx
cmp rdx, 0x1000
jb 0x14002a9c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x14002a9d7
call fcn.1400a8dfc
mov rax, rbx
jmp 0x14002a3c5
call fcn.1400b31d4
nop
call fcn.1400b31d4
nop
call fcn.140018480
int3
call fcn.1400b31d4
nop
call fcn.1400b31d4
int3