Function at 0x140157dd0
Capabilities:
Set socket configuration

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x998]
sub rsp, 0xa98
mov qword [rbp + 0x70], 0xfffffffffffffffe
mov rax, qword [0x140479080]
xor rax, rsp
mov qword [rbp + 0x980], rax
mov r14, r9
mov r13, r8
mov r15, rdx
mov rdi, rcx
mov qword [rbp - 0x38], rcx
mov qword [rbp - 0x18], rdx
mov rbx, qword [rbp + 0xa00]
mov qword [rbp + 0x58], rbx
mov rsi, qword [rbp + 0xa08]
mov qword [rbp + 0x60], rsi
mov r12, qword [rbp + 0xa10]
mov qword [rbp + 0x50], r12
mov dword [rsp + 0x30], 0
lea rax, vtable.artemis::CFileName.0
mov qword [rbp + 0x700], rax
mov rdx, r8
lea rcx, [rbp + 0x708]
call fcn.14000b200
mov eax, dword [0x1404a2d74]
mov dword [rbp + 0x72c], eax
mov byte [rbp + 0x728], 0x5c
lea rdx, [rbp + 0x178]
lea rcx, [rbp + 0x700]
call fcn.14011f220
nop
lea rax, vtable.artemis::CFileName.0
mov qword [rbp + 0x700], rax
lea rcx, [rbp + 0x708]
call fcn.14000b5d0
lea rdx, [rbp + 0x178]
lea rcx, [rbp + 0x158]
call fcn.1400b36e0
nop
mov rdx, rbx
lea rcx, [rbp + 0x138]
call fcn.1400b36e0
nop
mov rdx, rsi
lea rcx, [rbp + 0x118]
call fcn.1400b36e0
nop
mov rdx, r12
lea rcx, [rbp + 0xf8]
call fcn.1400b36e0
nop
movdqa xmm0, xmmword [0x1404107f0]
movdqu xmmword [rbp + 0x2e0], xmm0
mov byte [rbp + 0x2d0], 0
mov dword [rsp + 0x30], 2
lea rbx, [r14 + 0x10]
mov qword [rbp + 0x40], rbx
mov rdx, qword [rbx]
add rdx, 0x13
lea rcx, [rbp + 0x2d0]
call fcn.14000aee0
mov rdx, r14
cmp qword [r14 + 0x18], 0x10
jb 0x140157f2b
mov rdx, qword [r14]
mov r8, qword [rbx]
lea rcx, [rbp + 0x2d0]
call fcn.14000b980
mov r8d, reloc.WS2_32.dll_send
lea rdx, str._modeinfoappname
lea rcx, [rbp + 0x2d0]
call fcn.14000b980
lea rdx, [rbp + 0x138]
cmp qword [rbp + 0x150], 0x10
cmovae rdx, qword [rbp + 0x138]
mov r8, qword [rbp + 0x148]
lea rcx, [rbp + 0x2d0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x4f0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x4e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x4f0], xmm1
xor r12d, r12d
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r12b
mov dword [rsp + 0x30], 6
lea r8d, [r12 + 4]
lea rdx, str.id
lea rcx, [rbp + 0x4e0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x4d0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x4c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x4d0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r12b
mov dword [rsp + 0x30], sendto
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 0x10
cmovae rdx, qword [rbp + 0x118]
mov r8, qword [rbp + 0x128]
lea rcx, [rbp + 0x4c0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x4b0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x4a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x4b0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r12b
mov dword [rsp + 0x30], 0x1e
lea r8d, [r12 + 6]
lea rdx, str.pass
lea rcx, [rbp + 0x4a0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x490], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x480], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x490], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r12b
mov dword [rsp + 0x30], 0x3e
lea rdx, [rbp + 0xf8]
cmp qword [rbp + 0x110], 0x10
cmovae rdx, qword [rbp + 0xf8]
mov r8, qword [rbp + 0x108]
lea rcx, [rbp + 0x480]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x6f0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x6e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x6f0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r12b
mov dword [rsp + 0x30], 0x7e
lea r8d, [r12 + 0xa]
lea rdx, str.filename
lea rcx, [rbp + 0x6e0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x6d0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x6c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x6d0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r12b
mov dword [rsp + 0x30], 0xfe
lea rdx, [rbp + 0x158]
cmp qword [rbp + 0x170], 0x10
cmovae rdx, qword [rbp + 0x158]
mov r8, qword [rbp + 0x168]
lea rcx, [rbp + 0x6c0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x6b0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x6a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x6b0], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r12b
mov dword [rsp + 0x30], 0x1fe
lea rdx, [rbp + 0x6a0]
lea rcx, [rbp + 0x1e0]
call fcn.14011f7c0
nop
lea rcx, [rbp + 0x6a0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x6c0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x6e0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x480]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x4a0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x4c0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x4e0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x2d0]
call fcn.14000b5d0
cmp qword [rbp + 0x260], r12
je 0x14015826e
lea rcx, [rbp + 0x250]
cmp qword [rbp + 0x268], 0x10
cmovae rcx, qword [rbp + 0x250]
call fcn.140277aa8
mov word [rsp + 0x34], ax
jmp 0x140158274
mov word [rsp + 0x34], r12w
lea rdx, [rbp + 0x230]
lea rcx, [rbp + 0x500]
call fcn.14000b200
nop
lea rax, [rbp + 0x500]
cmp qword [rbp + 0x518], 0x10
cmovae rax, qword [rbp + 0x500]
mov qword [rbp + 0x38], rax
lea r8, [rsp + 0x34]
lea rdx, [rbp + 0x38]
lea rcx, [rsp + 0x68]
call fcn.140122060
nop
lea rcx, [rbp + 0x500]
call fcn.14000b5d0
mov rax, qword [rsp + 0x68]
mov byte [rax + 0x65], 1
movsxd rcx, dword [rax + 0x58]
cmp ecx, 0xffffffff
je 0x1401582eb
mov dword [rbp - 0x30], 1
lea r8, [rbp - 0x30]
mov edx, 0x8004667e
call qword [sym.imp.WS2_32.dll_ioctlsocket]
mov rbx, qword [rsp + 0x68]
lea rdx, [rbp + 0x890]
lea rcx, [rbp + 0x1e0]
call fcn.140120100
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140158310
mov rdx, qword [rax]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
movzx ebx, al
lea rcx, [rbp + 0x890]
call fcn.14000b5d0
test bl, bl
je 0x14015838f
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov r8d, 0x1c
lea rdx, [0x14038a628]
mov rcx, r15
call fcn.14000b830
nop
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x14015838a
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14015838a
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x14015838a
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
jmp 0x140159752
mov qword [rbp - 0x48], r12
mov qword [rbp + 8], r12
nop word [rax + rax]
mov r9, r12
mov r11, qword [rsp + 0x68]
lea rcx, [r11 + 0x78]
mov rax, qword [rcx + 0x18]
mov r8, r12
test rcx, rcx
je 0x1401583bb
mov r8, qword [rcx]
mov r10, qword [rcx + 0x20]
add r10, rax
cmp rax, r10
je 0x1401583ed
test r8, r8
mov rcx, r12
je 0x1401583d2
mov rcx, qword [r8]
mov rdx, qword [rcx + 0x10]
dec rdx
and rdx, rax
mov rcx, qword [rcx + 8]
mov rdx, qword [rcx + rdx*8]
add r9, qword [rdx + 8]
inc rax
jmp 0x1401583c2
mov rcx, r11
test r9, r9
je 0x140158461
call fcn.140169fb0
test al, al
je 0x140158477
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov r8d, 0x24
lea rdx, [0x14038a5e0]
mov rcx, r15
call fcn.14000b830
nop
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x14015845c
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14015845c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x14015845c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
jmp 0x140159752
mov rax, qword [r11]
lea r8, [rbp + 8]
lea rdx, [rbp - 0x48]
call qword [rax + 0x48]
test al, al
jne 0x1401596f4
mov ecx, 1
call qword [case.0x14024b920.42]
cmp qword [rbp + 8], 0
je 0x1401583a0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x30], r12
movdqa xmm0, xmmword [0x1404107f0]
movdqu xmmword [rbp + 0x550], xmm0
mov byte [rbp + 0x540], 0
mov r8d, 1
lea rdx, [0x140377d28]
lea rcx, [rbp + 0x540]
call fcn.14000b830
nop
mov rax, qword [rdi + 0xf0]
mov ebx, dword [rax + 0xaf0]
mov rdi, qword [rbp - 0x48]
movdqa xmm0, xmmword [0x1404107f0]
movdqu xmmword [rbp + 0x530], xmm0
mov byte [rbp + 0x520], 0
xor r8d, r8d
lea rdx, [0x1402c797a]
lea rcx, [rbp + 0x520]
call fcn.14000b830
nop
mov dword [rsp + 0x20], ebx
lea r9, [rbp + 0x520]
lea r8, [rbp + 0x540]
lea rdx, [rbp + 0x20]
mov rcx, rdi
call fcn.1400b2560
nop
lea rcx, [rbp + 0x520]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x540]
call fcn.14000b5d0
mov rcx, qword [rbp - 0x48]
call fcn.14023ed44
mov rdi, qword [rbp + 0x20]
mov rcx, rdi
mov rbx, rdi
mov r8, qword [rdi + 0x18]
cmp r8, 0x10
jb 0x140158561
mov rcx, qword [rdi]
mov rdx, qword [rdi + 0x10]
mov rsi, qword [rbp + 0x28]
cmp rdx, 2
jne 0x140158649
movzx eax, byte [rcx]
cmp al, byte [0x14038a608]
jne 0x14015858f
movzx eax, byte [rcx + 1]
cmp al, byte [0x14038a609]
jne 0x14015858f
mov eax, r12d
jmp 0x140158594
sbb eax, eax
or eax, 1
test eax, eax
jne 0x140158649
mov rax, rsi
sub rax, rbx
sar rax, 5
cmp rax, 2
jb 0x140158649
lea rdx, [rdi + 0x20]
mov rcx, r15
call fcn.14000b200
nop
cmp rbx, rsi
je 0x1401585d3
mov rcx, rbx
call fcn.14000b5d0
add rbx, 0x20
cmp rbx, rsi
jne 0x1401585c2
mov rdx, qword [rbp + 0x30]
sub rdx, rdi
and rdx, 0xffffffffffffffe0
mov rax, rdi
cmp rdx, 0x1000
jb 0x140158603
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140159823
mov rcx, rdi
call fcn.14023ed44
nop
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x140158644
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140158644
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140158644
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
jmp 0x140159752
mov rcx, rbx
cmp r8, 0x10
jb 0x140158655
mov rcx, qword [rdi]
cmp rdx, 2
jne 0x140159645
movzx eax, byte [rcx]
cmp al, byte [0x14038a680]
jne 0x14015867b
movzx eax, byte [rcx + 1]
cmp al, byte [0x14038a681]
jne 0x14015867b
mov eax, r12d
jmp 0x140158680
sbb eax, eax
or eax, 1
test eax, eax
jne 0x140159645
mov rax, rsi
sub rax, rbx
sar rax, 5
cmp rax, 2
jb 0x140159645
lea rcx, [rdi + 0x20]
cmp qword [rcx + 0x18], 0x10
jb 0x1401586aa
mov rcx, qword [rcx]
call fcn.140277aa8
movsxd r12, eax
cmp rbx, rsi
je 0x1401586c8
mov rcx, rbx
call fcn.14000b5d0
add rbx, 0x20
cmp rbx, rsi
jne 0x1401586b7
mov rdx, qword [rbp + 0x30]
sub rdx, rdi
and rdx, 0xffffffffffffffe0
mov rax, rdi
cmp rdx, 0x1000
jb 0x1401586f8
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140159829
mov rcx, rdi
call fcn.14023ed44
nop
mov edi, 0xffffffff
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x14015873b
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14015873b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
mov eax, edi
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14015873b
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
lea rsi, vtable.artemis::CUrl.0
mov qword [rbp + 0x1e0], rsi
lea rcx, [rbp + 0x290]
call fcn.14000b5d0
lea rcx, [rbp + 0x270]
call fcn.14000b5d0
lea rcx, [rbp + 0x250]
call fcn.14000b5d0
lea rcx, [rbp + 0x230]
call fcn.14000b5d0
lea rcx, [rbp + 0x210]
call fcn.14000b5d0
lea rax, vtable.artemis::CFileName.0
mov qword [rbp + 0x1e0], rax
lea rcx, [rbp + 0x1e8]
call fcn.14000b5d0
movdqa xmm0, xmmword [0x1404107f0]
movdqu xmmword [rbp + 0x1c8], xmm0
mov byte [rbp + 0x1b8], 0
movdqu xmmword [rbp + 0x1a8], xmm0
mov byte [rbp + 0x198], 0
movdqu xmmword [rbp + 0x570], xmm0
mov byte [rbp + 0x560], 0
mov r8d, reloc.WS2_32.dll_inet_ntoa
lea rdx, str.GameDataPath
lea rcx, [rbp + 0x560]
call fcn.14000b830
nop
call fcn.1400aa1c0
mov rcx, rax
lea r8, [rbp + 0x1b8]
lea rdx, [rbp + 0x560]
call fcn.140108a90
nop
lea rcx, [rbp + 0x560]
call fcn.14000b5d0
movdqa xmm0, xmmword [0x1404107f0]
movdqu xmmword [rbp + 0x590], xmm0
mov byte [rbp + 0x580], 0
mov r8d, reloc.WS2_32.dll_inet_ntoa
lea rdx, str.SaveDataPath
lea rcx, [rbp + 0x580]
call fcn.14000b830
nop
call fcn.1400aa1c0
mov rcx, rax
lea r8, [rbp + 0x198]
lea rdx, [rbp + 0x580]
call fcn.140108a90
nop
lea rcx, [rbp + 0x580]
call fcn.14000b5d0
mov rbx, qword [rbp - 0x38]
mov rax, qword [rbx + 0xf0]
mov edx, dword [rax + 0xaf0]
lea rcx, [rbp + 0x198]
call fcn.140178450
mov rax, qword [rbx + 0xf0]
mov r8d, dword [rax + 0xaf0]
xor edx, edx
mov rcx, r13
call fcn.1401787f0
mov qword [rbp + 0x48], rax
cmp r12, rax
jle 0x140158f81
movdqa xmm0, xmmword [0x1404107f0]
movdqu xmmword [rbp + 0x300], xmm0
mov byte [rbp + 0x2f0], 0
mov dword [rsp + 0x30], 0x7fc
mov rbx, qword [rbp + 0x40]
mov rdx, qword [rbx]
add rdx, 0x13
lea rcx, [rbp + 0x2f0]
call fcn.14000aee0
cmp qword [r14 + 0x18], 0x10
jb 0x1401588f1
mov r14, qword [r14]
mov r8, qword [rbx]
mov rdx, r14
lea rcx, [rbp + 0x2f0]
call fcn.14000b980
mov r8d, reloc.WS2_32.dll_send
lea rdx, str._modedownappname
lea rcx, [rbp + 0x2f0]
call fcn.14000b980
lea rdx, [rbp + 0x138]
cmp qword [rbp + 0x150], 0x10
cmovae rdx, qword [rbp + 0x138]
mov r8, qword [rbp + 0x148]
lea rcx, [rbp + 0x2f0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x670], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x660], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x670], xmm1
xor r14d, r14d
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov dword [rsp + 0x30], 0xffc
lea r8d, [r14 + 4]
lea rdx, str.id
lea rcx, [rbp + 0x660]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x650], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x640], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x650], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov dword [rsp + 0x30], 0x1ffc
lea rdx, [rbp + 0x118]
cmp qword [rbp + 0x130], 0x10
cmovae rdx, qword [rbp + 0x118]
mov r8, qword [rbp + 0x128]
lea rcx, [rbp + 0x640]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x630], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x620], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x630], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov dword [rsp + 0x30], 0x3ffc
lea r8d, [r14 + 6]
lea rdx, str.pass
lea rcx, [rbp + 0x620]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x610], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x600], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x610], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov dword [rsp + 0x30], 0x7ffc
lea rdx, [rbp + 0xf8]
cmp qword [rbp + 0x110], 0x10
cmovae rdx, qword [rbp + 0xf8]
mov r8, qword [rbp + 0x108]
lea rcx, [rbp + 0x600]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x5f0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x5e0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x5f0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov dword [rsp + 0x30], 0xfffc
lea r8d, [r14 + 0xa]
lea rdx, str.filename
lea rcx, [rbp + 0x5e0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x5d0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x5c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x5d0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov dword [rsp + 0x30], 0x1fffc
lea rdx, [rbp + 0x158]
cmp qword [rbp + 0x170], 0x10
cmovae rdx, qword [rbp + 0x158]
mov r8, qword [rbp + 0x168]
lea rcx, [rbp + 0x5c0]
call fcn.14000b980
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x5b0], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x5a0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x5b0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], r14b
mov dword [rsp + 0x30], 0x3fffc
lea rdx, [rbp + 0x5a0]
lea rcx, [rbp + 0x3b0]
call fcn.14011f7c0
nop
lea rcx, [rbp + 0x5a0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x5c0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x5e0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x600]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x620]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x640]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x660]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x2f0]
call fcn.14000b5d0
cmp qword [rbp + 0x430], r14
je 0x140158c34
lea rcx, [rbp + 0x420]
cmp qword [rbp + 0x438], 0x10
cmovae rcx, qword [rbp + 0x420]
call fcn.140277aa8
mov word [rsp + 0x36], ax
jmp 0x140158c3a
mov word [rsp + 0x36], r14w
lea rdx, [rbp + 0x400]
lea rcx, [rbp + 0x680]
call fcn.14000b200
nop
lea rax, [rbp + 0x680]
cmp qword [rbp + 0x698], 0x10
cmovae rax, qword [rbp + 0x680]
mov qword [rbp + 0x68], rax
lea r8, [rsp + 0x36]
lea rdx, [rbp + 0x68]
lea rcx, [rbp - 0x78]
call fcn.140122060
nop
lea rcx, [rbp + 0x680]
call fcn.14000b5d0
mov rcx, qword [rbp - 0x78]
call fcn.14016aa30
mov rcx, qword [rbp - 0x78]
mov rax, qword [rcx]
mov rdx, r13
call qword [rax + 0x70]
mov rbx, qword [rbp - 0x78]
lea rdx, [rbp + 0x770]
lea rcx, [rbp + 0x3b0]
call fcn.140120100
mov rdx, rax
cmp qword [rax + 0x18], 0x10
jb 0x140158cc2
mov rdx, qword [rax]
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 0x28]
movzx ebx, al
lea rcx, [rbp + 0x770]
call fcn.14000b5d0
test bl, bl
je 0x140158db1
mov qword [r15 + 0x10], r14
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov r8d, 0x1c
lea rdx, [0x14038a628]
mov rcx, r15
call fcn.14000b830
nop
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x140158d3a
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140158d3a
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140158d3a
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
mov qword [rbp + 0x3b0], rsi
lea rcx, [rbp + 0x460]
call fcn.14000b5d0
lea rcx, [rbp + 0x440]
call fcn.14000b5d0
lea rcx, [rbp + 0x420]
call fcn.14000b5d0
lea rcx, [rbp + 0x400]
call fcn.14000b5d0
lea rcx, [rbp + 0x3e0]
call fcn.14000b5d0
lea rax, vtable.artemis::CFileName.0
mov qword [rbp + 0x3b0], rax
lea rcx, [rbp + 0x3b8]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x198]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x1b8]
jmp 0x1401597b1
mov qword [rbp + 0x10], r14
nop word [rax + rax]
mov rbx, qword [rbp - 0x78]
mov rcx, rbx
call fcn.14016a9e0
mov rcx, rbx
test rax, rax
je 0x140158e3a
call fcn.140169fb0
test al, al
je 0x140158e4e
mov qword [r15 + 0x10], r14
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov r8d, 0x24
lea rdx, [0x14038a5e0]
mov rcx, r15
call fcn.14000b830
nop
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x140158e35
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140158e35
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140158e35
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
jmp 0x140158d3a
mov rax, qword [rbx]
lea r8, [rbp + 0x10]
xor edx, edx
call qword [rax + 0x48]
test al, al
jne 0x140158f24
mov ecx, 1
call qword [case.0x14024b920.42]
cmp qword [rbp + 0x10], 0
je 0x140158dc0
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x140158e96
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140158e96
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140158e96
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
mov qword [rbp + 0x3b0], rsi
lea rcx, [rbp + 0x460]
call fcn.14000b5d0
lea rcx, [rbp + 0x440]
call fcn.14000b5d0
lea rcx, [rbp + 0x420]
call fcn.14000b5d0
lea rcx, [rbp + 0x400]
call fcn.14000b5d0
lea rcx, [rbp + 0x3e0]
call fcn.14000b5d0
lea rax, vtable.artemis::CFileName.0
mov qword [rbp + 0x3b0], rax
lea rcx, [rbp + 0x3b8]
call fcn.14000b5d0
mov rax, qword [rbp - 0x38]
mov rax, qword [rax + 0xf0]
mov edx, dword [rax + 0xaf0]
lea rcx, [rbp + 0x1b8]
call fcn.140178450
lea rdx, [0x1402c797a]
mov rcx, r15
call fcn.14000b1a0
jmp 0x140158d98
mov qword [r15 + 0x10], r14
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov r8d, 0x24
lea rdx, [0x14038a5e0]
mov rcx, r15
call fcn.14000b830
nop
mov rbx, qword [rbp - 0x70]
test rbx, rbx
je 0x140158f7c
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140158f7c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140158f7c
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
jmp 0x140158d3a
jge 0x140158ef3
mov eax, dword [0x1404a2d74]
mov dword [rbp + 0x318], eax
xor r12d, r12d
mov qword [rbp + 0x320], r12
mov qword [rbp + 0x338], r12
mov qword [rbp + 0x340], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x328], r12b
mov qword [rbp + 0x358], r12
mov qword [rbp + 0x360], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x348], r12b
lea rcx, [rbp + 0x368]
call fcn.1400a94d0
mov qword [rbp + 0x398], r12
mov qword [rbp + 0x3a0], r12
mov byte [rbp + 0x3a8], r12b
lea rbx, vtable.artemis::CArtemisPackFile.0
mov qword [rbp + 0x310], rbx
mov rcx, r13
call fcn.14000b0b0
mov rdx, rax
lea rcx, [rbp + 0x310]
call fcn.140129ec0
test al, al
je 0x140159041
lea rdx, [0x14038a660]
mov rcx, r15
call fcn.14000b1a0
nop
mov qword [rbp + 0x310], rbx
lea rcx, [rbp + 0x310]
call fcn.1400a9640
jmp 0x140158d98
mov eax, dword [rbp + 0x394]
mov dword [rsp + 0x3c], eax
lea rdx, [rsp + 0x3c]
lea rcx, [rsp + 0x78]
call fcn.14000cb60
nop
mov rax, qword [rsp + 0x78]
mov r8d, dword [rsp + 0x3c]
movsxd rdx, dword [rax + 0x18]
add rdx, qword [rax + 8]
lea rcx, [rbp + 0x310]
call fcn.140191fb0
lea rcx, [rbp + 0x310]
call fcn.1400a97d0
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r12
lea rcx, [rbp + 0x78]
call fcn.14015b160
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140121eb0
nop
lea rcx, [rbp + 0x80]
call fcn.140007dd0
mov r8, qword [rbp + 0x58]
lea rcx, [rbp + 0x88]
call fcn.14015b320
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140121eb0
nop
lea rcx, [rbp + 0x90]
call fcn.140007dd0
mov r8, qword [rbp + 0x60]
lea rcx, [rbp + 0x98]
call fcn.14015b4a0
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140121eb0
nop
lea rcx, [rbp + 0xa0]
call fcn.140007dd0
mov r8, qword [rbp + 0x50]
lea rcx, [rbp + 0xa8]
call fcn.14015b620
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140121eb0
nop
lea rcx, [rbp + 0xb0]
call fcn.140007dd0
lea r8, [rbp + 0x178]
lea rcx, [rbp + 0xe8]
call fcn.14015b7a0
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140121eb0
nop
lea rcx, [rbp + 0xf0]
call fcn.140007dd0
lea rdx, [rbp + 0x48]
lea rcx, [rbp + 0x790]
call fcn.14015b920
nop
mov r8, rax
lea rcx, [rbp + 0xb8]
call fcn.14015ba50
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140121eb0
nop
lea rcx, [rbp + 0xc0]
call fcn.140007dd0
nop
lea rcx, [rbp + 0x790]
call fcn.14000b5d0
lea rdx, str.Content_Disposition:_form_data__name_file___filename_
lea rcx, [rbp + 0x7f0]
call fcn.14000b1a0
nop
mov r8, r13
mov rdx, rax
lea rcx, [rbp + 0x7d0]
call fcn.1400af1e0
nop
lea r8, str.__r_nContent_Type:_application_octet_stream
mov rdx, rax
lea rcx, [rbp + 0x7b0]
call fcn.14000c670
nop
lea r8, [rsp + 0x78]
mov rdx, rax
lea rcx, [rbp + 0xc8]
call fcn.1401222e0
nop
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.140121eb0
nop
lea rcx, [rbp + 0xd0]
call fcn.140007dd0
nop
lea rcx, [rbp + 0x7b0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x7d0]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x7f0]
call fcn.14000b5d0
lea rcx, [rbp - 0x68]
call fcn.14000ca10
nop
lea rdx, [rbp - 0x68]
lea rcx, [rbp + 0xd8]
call fcn.14000ab80
lea r8, [rsp + 0x40]
mov rdx, rax
lea rcx, [rbp + 0x2b0]
call fcn.14011ef40
nop
lea rcx, [rsp + 0x40]
call fcn.140159830
mov rdx, r14
lea rcx, [rbp + 0x8b0]
call fcn.14011f7c0
nop
lea rcx, [rbp + 0x8b0]
call fcn.1401200e0
mov word [rsp + 0x38], ax
lea rdx, [rbp + 0x810]
lea rcx, [rbp + 0x8b0]
call fcn.1401200c0
nop
mov rcx, rax
call fcn.14000b0b0
mov qword [rbp - 0x18], rax
lea r8, [rsp + 0x38]
lea rdx, [rbp - 0x18]
lea rcx, [rsp + 0x58]
call fcn.140122060
nop
lea rcx, [rbp + 0x810]
call fcn.14000b5d0
mov rcx, qword [rsp + 0x58]
call fcn.14016aa30
lea rcx, [rbp - 0x58]
call fcn.1400ae3f0
nop
lea rdx, str.Content_Type
lea rcx, [rbp + 0x730]
call fcn.14000b1a0
nop
lea rdx, str.multipart_form_data__boundary
lea rcx, [rbp + 0x850]
call fcn.14000b1a0
nop
lea r8, [rbp + 0x2b0]
mov rdx, rax
lea rcx, [rbp + 0x830]
call fcn.1400af1e0
mov rbx, rax
lea rdx, [rbp + 0x730]
lea rcx, [rbp - 0x58]
call fcn.1401013b0
mov rcx, rax
mov rdx, rbx
call fcn.14000b120
nop
lea rcx, [rbp + 0x830]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x850]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x730]
call fcn.14000b5d0
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
lea rdx, [rbp - 0x58]
call qword [rax + 0x60]
lea rdx, [rbp - 0x28]
mov rcx, qword [rbp - 0x68]
call fcn.1401696a0
nop
mov r14, qword [rsp + 0x58]
lea rdx, [rbp + 0x870]
lea rcx, [rbp + 0x8b0]
call fcn.140120100
nop
mov rdx, qword [rbp - 0x28]
movsxd rsi, dword [rdx + 0x18]
add rsi, qword [rdx + 8]
mov rdi, qword [r14]
mov ebx, dword [rdx + 0x1c]
mov rcx, rax
call fcn.14000b0b0
mov rdx, rax
mov r9d, ebx
mov r8, rsi
mov rcx, r14
call qword [rdi + 0x40]
movzx ebx, al
lea rcx, [rbp + 0x870]
call fcn.14000b5d0
test bl, bl
je 0x140159470
lea rdx, [0x14038a628]
mov rcx, r15
call fcn.14000b1a0
nop
lea rcx, [rbp - 0x20]
call fcn.140007dd0
nop
lea rcx, [rbp - 0x58]
call fcn.1400a94b0
nop
lea rcx, [rsp + 0x60]
call fcn.140007dd0
nop
lea rcx, [rbp + 0x8b0]
call fcn.140120060
nop
lea rcx, [rbp + 0x2b0]
call fcn.14000b5d0
nop
lea rcx, [rbp - 0x60]
call fcn.140007dd0
nop
lea rcx, [rsp + 0x40]
call fcn.14001ff10
nop
lea rcx, [rbp - 0x80]
call fcn.140007dd0
nop
lea rax, vtable.artemis::CArtemisPackFile.0
mov qword [rbp + 0x310], rax
lea rcx, [rbp + 0x310]
call fcn.1400a9640
jmp 0x140158d98
mov qword [rbp - 0x40], r12
mov qword [rbp + 0x18], r12
nop dword [rax + rax]
mov rbx, qword [rsp + 0x58]
mov rcx, rbx
call fcn.14016a9e0
mov rcx, rbx
test rax, rax
je 0x14015949c
call fcn.140169fb0
jmp 0x1401594aa
mov rax, qword [rbx]
lea r8, [rbp + 0x18]
lea rdx, [rbp - 0x40]
call qword [rax + 0x48]
test al, al
jne 0x140159578
mov ecx, 1
call qword [case.0x14024b920.42]
cmp qword [rbp + 0x18], 0
je 0x140159480
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x10], xmm0
mov qword [rbp], r12
lea rdx, [0x140377d28]
lea rcx, [rbp + 0x750]
call fcn.14000b1a0
nop
mov rax, qword [rbp - 0x38]
mov rax, qword [rax + 0xf0]
mov r9d, dword [rax + 0xaf0]
lea r8, [rbp + 0x750]
lea rdx, [rbp - 0x10]
mov rcx, qword [rbp - 0x40]
call fcn.1400b24c0
nop
lea rcx, [rbp + 0x750]
call fcn.14000b5d0
mov rcx, qword [rbp - 0x40]
call fcn.14023ed44
xor edx, edx
lea rcx, [rbp - 0x10]
call fcn.1401014f0
lea rdx, [0x14038a608]
mov rcx, rax
call fcn.1400af240
test al, al
je 0x140159584
mov rax, qword [rbp - 8]
sub rax, qword [rbp - 0x10]
sar rax, 5
cmp rax, 2
jb 0x140159584
mov edx, 1
lea rcx, [rbp - 0x10]
call fcn.1401014f0
mov rdx, rax
mov rcx, r15
call fcn.14000b200
nop
lea rcx, [rbp - 0x10]
call fcn.140101500
jmp 0x1401593f9
lea rdx, [0x14038a5e0]
jmp 0x1401593f0
xor edx, edx
lea rcx, [rbp - 0x10]
call fcn.1401014f0
lea rdx, [0x14038a680]
mov rcx, rax
call fcn.1400af240
test al, al
je 0x140159627
lea rcx, [rbp - 0x10]
call fcn.140101500
nop
lea rcx, [rbp - 0x20]
call fcn.140007dd0
nop
lea rcx, [rbp - 0x58]
call fcn.1400a94b0
nop
lea rcx, [rsp + 0x60]
call fcn.140007dd0
nop
lea rcx, [rbp + 0x8b0]
call fcn.140120060
nop
lea rcx, [rbp + 0x2b0]
call fcn.14000b5d0
nop
lea rcx, [rbp - 0x60]
call fcn.140007dd0
nop
lea rcx, [rsp + 0x40]
call fcn.14001ff10
nop
lea rcx, [rbp - 0x80]
call fcn.140007dd0
nop
lea rax, vtable.artemis::CArtemisPackFile.0
mov qword [rbp + 0x310], rax
lea rcx, [rbp + 0x310]
call fcn.1400a9640
jmp 0x140158ef3
lea rdx, [0x14038a840]
mov rcx, r15
call fcn.14000b1a0
nop
lea rcx, [rbp - 0x10]
call fcn.140101500
jmp 0x1401593f9
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov r8d, 0x2a
lea rdx, [0x14038a688]
mov rcx, r15
call fcn.14000b830
nop
cmp rbx, rsi
je 0x140159681
mov rcx, rbx
call fcn.14000b5d0
add rbx, 0x20
cmp rbx, rsi
jne 0x140159670
mov rdx, qword [rbp + 0x30]
sub rdx, rdi
and rdx, 0xffffffffffffffe0
mov rax, rdi
cmp rdx, 0x1000
jb 0x1401596b1
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14015981d
mov rcx, rdi
call fcn.14023ed44
nop
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x1401596f2
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x1401596f2
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x1401596f2
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
jmp 0x140159752
mov qword [r15 + 0x10], r12
mov qword [r15 + 0x18], reloc.WS2_32.dll_ntohs
mov byte [r15], 0
mov r8d, 0x24
lea rdx, [0x14038a5e0]
mov rcx, r15
call fcn.14000b830
nop
mov rbx, qword [rsp + 0x70]
test rbx, rbx
je 0x140159752
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140159752
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x140159752
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_recv]
nop
lea rsi, vtable.artemis::CUrl.0
mov qword [rbp + 0x1e0], rsi
lea rcx, [rbp + 0x290]
call fcn.14000b5d0
lea rcx, [rbp + 0x270]
call fcn.14000b5d0
lea rcx, [rbp + 0x250]
call fcn.14000b5d0
lea rcx, [rbp + 0x230]
call fcn.14000b5d0
lea rcx, [rbp + 0x210]
call fcn.14000b5d0
lea rax, vtable.artemis::CFileName.0
lea rcx, [rbp + 0x1e8]
mov qword [rbp + 0x1e0], rax
call fcn.14000b5d0
nop
lea rcx, [rbp + 0xf8]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x118]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x138]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x158]
call fcn.14000b5d0
nop
lea rcx, [rbp + 0x178]
call fcn.14000b5d0
mov rax, r15
mov rcx, qword [rbp + 0x980]
xor rcx, rsp
call fcn.14023ed20
add rsp, 0xa98
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1402672dc
nop
call fcn.1402672dc
int3
call fcn.1402672dc
int3