Function at 0x1800415a0
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x108
mov rax, qword [0x1800f8370]
xor rax, rsp
mov qword [rsp + 0xf0], rax
mov dword [rsp + 0x40], 0
mov dword [rsp + 0x54], reloc.WS2_32.dll_sendto
mov dword [rsp + 0x24], 0xc800
mov eax, dword [rsp + 0x24]
imul eax, dword [rsp + 0x54]
cdqe
mov qword [rsp + 0x98], rax
lea rdx, [0x1800cc0f4]
mov rcx, qword [rsp + 0x118]
call fcn.18007f8e0
mov qword [rsp + 0x30], rax
cmp qword [rsp + 0x30], 0
jne 0x18004163b
lea rdx, [0x1800cc09b]
mov rcx, qword [rsp + 0x110]
call fcn.1800067b0
mov eax, dword [rsp + 0x40]
or eax, 1
mov dword [rsp + 0x40], eax
mov rax, qword [rsp + 0x110]
jmp 0x180041a29
mov r8d, 2
xor edx, edx
mov rcx, qword [rsp + 0x30]
call fcn.18007fd1c
mov rcx, qword [rsp + 0x30]
call fcn.18007fe44
mov qword [rsp + 0x68], rax
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x30]
call fcn.18007fd1c
movsxd rax, dword [rsp + 0x24]
mov rcx, rax
call fcn.180077a18
mov qword [rsp + 0x88], rax
mov rax, qword [rsp + 0x88]
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x20], 0
mov dword [rsp + 0x28], 0
mov rax, qword [rsp + 0x98]
cmp qword [rsp + 0x68], rax
jg 0x180041712
movsxd rax, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r8, rax
mov edx, 1
mov rcx, qword [rsp + 0x38]
call fcn.18007fc1c
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x50], 0
jmp 0x1800416e0
mov eax, dword [rsp + 0x50]
inc eax
mov dword [rsp + 0x50], eax
mov eax, dword [rsp + 0x28]
cmp dword [rsp + 0x50], eax
jge 0x180041706
movsxd rax, dword [rsp + 0x50]
mov rcx, qword [rsp + 0x38]
movzx eax, byte [rcx + rax]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
jmp 0x1800416d6
cmp dword [rsp + 0x28], 0
jg 0x1800416ac
jmp 0x1800418f5
mov eax, dword [rsp + 0x24]
shl eax, 1
cdqe
mov rcx, qword [rsp + 0x68]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x78], rax
mov eax, dword [rsp + 0x54]
sub eax, 2
cdqe
mov qword [rsp + 0x80], rax
mov rax, qword [rsp + 0x78]
cqo
mov rcx, qword [rsp + 0x80]
idiv rcx
mov qword [rsp + 0x90], rax
mov qword [rsp + 0x60], 0
movsxd rax, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r8, rax
mov edx, 1
mov rcx, qword [rsp + 0x38]
call fcn.18007fc1c
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x44], 0
jmp 0x180041792
mov eax, dword [rsp + 0x44]
inc eax
mov dword [rsp + 0x44], eax
mov eax, dword [rsp + 0x28]
cmp dword [rsp + 0x44], eax
jge 0x1800417b8
movsxd rax, dword [rsp + 0x44]
mov rcx, qword [rsp + 0x38]
movzx eax, byte [rcx + rax]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
jmp 0x180041788
movsxd rax, dword [rsp + 0x24]
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x58], 0
jmp 0x1800417e1
mov eax, dword [rsp + 0x58]
inc eax
mov dword [rsp + 0x58], eax
mov eax, dword [rsp + 0x54]
sub eax, 2
cmp dword [rsp + 0x58], eax
jge 0x18004187b
xor r8d, r8d
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x30]
call fcn.18007fd1c
movsxd rax, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r8, rax
mov edx, 1
mov rcx, qword [rsp + 0x38]
call fcn.18007fc1c
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x48], 0
jmp 0x180041838
mov eax, dword [rsp + 0x48]
inc eax
mov dword [rsp + 0x48], eax
mov eax, dword [rsp + 0x28]
cmp dword [rsp + 0x48], eax
jge 0x18004185e
movsxd rax, dword [rsp + 0x48]
mov rcx, qword [rsp + 0x38]
movzx eax, byte [rcx + rax]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
jmp 0x18004182e
mov rax, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x60]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
jmp 0x1800417d7
movsxd rax, dword [rsp + 0x24]
mov rcx, qword [rsp + 0x68]
sub rcx, rax
mov rax, rcx
xor r8d, r8d
mov rdx, rax
mov rcx, qword [rsp + 0x30]
call fcn.18007fd1c
movsxd rax, dword [rsp + 0x24]
mov r9, qword [rsp + 0x30]
mov r8, rax
mov edx, 1
mov rcx, qword [rsp + 0x38]
call fcn.18007fc1c
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x4c], 0
jmp 0x1800418cf
mov eax, dword [rsp + 0x4c]
inc eax
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x28]
cmp dword [rsp + 0x4c], eax
jge 0x1800418f5
movsxd rax, dword [rsp + 0x4c]
mov rcx, qword [rsp + 0x38]
movzx eax, byte [rcx + rax]
mov ecx, dword [rsp + 0x20]
add ecx, eax
mov eax, ecx
mov dword [rsp + 0x20], eax
jmp 0x1800418c5
mov rcx, qword [rsp + 0x30]
call fcn.18007f454
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0xa8], rax
mov rcx, qword [rsp + 0xa8]
call fcn.18007dc68
mov rax, qword [rsp + 0x68]
add rax, 0x9d
imul rax, rax, 0xc
mov qword [rsp + 0xa0], rax
mov r8d, 4
lea rdx, [rsp + 0xa0]
lea rcx, [rsp + 0xd0]
call fcn.18007cf80
lea rax, [rsp + 0xd4]
mov r8d, 4
lea rdx, [rsp + 0x20]
mov rcx, rax
call fcn.18007cf80
mov dword [rsp + 0x2c], 0
jmp 0x18004197a
mov eax, dword [rsp + 0x2c]
inc eax
mov dword [rsp + 0x2c], eax
cmp dword [rsp + 0x2c], 8
jge 0x1800419b5
movsxd rax, dword [rsp + 0x2c]
movzx eax, byte [rsp + rax + 0xd0]
mov ecx, dword [rsp + 0x2c]
shl ecx, 1
movsxd rcx, ecx
lea rcx, [rsp + rcx + 0xd8]
mov r9d, eax
lea r8, [0x1800cc118]
mov edx, 3
call fcn.18007d94c
jmp 0x180041970
mov eax, 1
imul rax, rax, 0x10
mov qword [rsp + 0x70], rax
cmp qword [rsp + 0x70], 0x11
jae 0x1800419cd
jmp 0x1800419d2
call fcn.18007ea18
mov rax, qword [rsp + 0x70]
mov byte [rsp + rax + 0xd8], 0
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0xb0]
call fcn.1800067b0
lea rdx, [rsp + 0xb0]
mov rcx, qword [rsp + 0x110]
call fcn.1800066e0
mov eax, dword [rsp + 0x40]
or eax, 1
mov dword [rsp + 0x40], eax
lea rcx, [rsp + 0xb0]
call fcn.180007220
mov rax, qword [rsp + 0x110]
mov rcx, qword [rsp + 0xf0]
xor rcx, rsp
call fcn.18007e510
add rsp, 0x108
ret