Function at 0x1400769e0
Capabilities:
Access peb ldr_data
Create directory
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x620]
sub rsp, 0x720
mov rax, qword [0x1403c1140]
xor rax, rsp
mov qword [rbp + 0x618], rax
mov rdi, r8
mov qword [rsp + 0x70], r8
mov r14, rdx
mov r15, rcx
mov qword [rbp - 0x10], rcx
mov qword [rbp + 0x128], rcx
xor r12d, r12d
mov dword [rsp + 0x44], r12d
mov dword [rsp + 0x38], r12d
mov qword [rcx], r12
mov qword [rcx + 8], r12
mov qword [rcx + 0x10], r12
add rcx, 0x18
call fcn.14008e0a0
nop
cmp qword [rdi + 0x10], r12
setne al
mov byte [r15 + 0x38], al
mov byte [r15 + 0x39], r12b
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x240]
call fcn.14036e980
lea rax, [0x140000000]
lea rax, [rax + 0x39d160]
mov qword [rbp + 0x240], rax
mov qword [rbp + 0x2f8], r12
mov qword [rbp + 0x300], r12
mov dword [rbp + 0x308], r12d
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x310], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x320], xmm1
movdqa xmmword [rbp + 0x330], xmm0
mov qword [rbp + 0x340], r12
mov byte [rbp + 0x348], r12b
mov esi, 1
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x44], esi
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x2f0], rax
mov dword [rbp + 0x2ec], 0x98
mov qword [rbp + 0x248], r12
xor r8d, r8d
lea rdx, [rbp + 0x250]
lea rcx, [rbp + 0x2f0]
call fcn.140080c90
nop
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rdi, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rdi
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x23c], edx
lea rcx, [rbp + 0x250]
call fcn.140080f20
nop
mov rcx, r14
cmp qword [r14 + 0x18], 7
jbe 0x140076b53
mov rcx, qword [r14]
mov ebx, 6
lea r13d, [rbx - 4]
cmp qword [rbp + 0x2d0], 0
jne 0x140076c16
lea edx, [rbx - 5]
lea r8d, [rbx + 0x3a]
call fcn.1402e516c
test rax, rax
je 0x140076c16
lea r8d, [rbx - 5]
mov rdx, rax
lea rcx, [rbp + 0x250]
call fcn.140082d60
mov rax, qword [rbp + 0x2b0]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x58], rcx
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
lea rcx, [rsp + 0x50]
call fcn.140082340
mov rdx, rax
lea rcx, [rbp + 0x250]
call fcn.140081ee0
nop
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140076be3
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rax
test rax, rax
je 0x140076be3
mov rax, qword [rax]
lea edx, [rbx - 5]
call qword [rax]
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
mov eax, 4
cmp qword [rbp + rcx + 0x288], 0
cmovne eax, r12d
mov dword [rbp + rcx + 0x250], eax
test dword [rbp + rcx + 0x254], eax
jne 0x140079d5d
jmp 0x140076c50
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
mov eax, ebx
cmp qword [rbp + rcx + 0x288], 0
cmovne eax, r13d
or eax, dword [rbp + rcx + 0x250]
and eax, 0x17
mov dword [rbp + rcx + 0x250], eax
mov edx, dword [rbp + rcx + 0x254]
and edx, eax
jne 0x140079d8f
lea rsi, vtable.std::ios_base.0
cmp qword [rbp + 0x2d0], 0
je 0x1400797a8
xorps xmm0, xmm0
movups xmmword [rbp + 0x470], xmm0
mov qword [rbp + 0x480], r12
mov qword [rbp + 0x488], r12
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x470]
call fcn.14008f2b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x450], xmm0
mov qword [rbp + 0x460], r12
mov qword [rbp + 0x468], r12
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x450]
call fcn.14008f2b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x430], xmm0
mov qword [rbp + 0x440], r12
mov qword [rbp + 0x448], r12
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x430]
call fcn.14008f2b0
nop
cmp byte [r15 + 0x38], 0
je 0x1400795b7
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
mov rax, qword [rbp + rcx + 0x280]
mov rcx, qword [rax + 8]
mov qword [rsp + 0x58], rcx
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
lea rcx, [rsp + 0x50]
call fcn.140080ae0
mov rcx, rax
mov rax, qword [rax]
mov dl, 0xa
call qword [rax + 0x40]
movzx edi, al
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x140076d5a
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rax
test rax, rax
je 0x140076d5a
mov rax, qword [rax]
mov edx, 1
call qword [rax]
movzx r8d, dil
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 0x240]
call fcn.140075ea0
lea rax, [rbp + 0x28]
mov qword [rsp + 0x50], rax
mov rbx, qword [rsp + 0x70]
mov rdx, rbx
lea rcx, [rbp + 0x28]
call fcn.14008c3d0
mov r12, rax
mov qword [rsp + 0x60], rax
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 0x48]
call fcn.14008c3d0
mov qword [rsp + 0x38], rax
lea rax, [rbp + 0x68]
mov qword [rsp + 0x50], rax
mov rdx, r12
lea rcx, [rbp + 0x68]
call fcn.14008c3d0
mov r13, rax
mov qword [rsp + 0x48], rax
mov rdx, qword [rsp + 0x38]
lea rcx, [rbp + 0x88]
call fcn.14008c3d0
mov r12, rax
mov qword [rsp + 0x50], rax
cmp qword [r13 + 0x10], 0
je 0x14007771f
mov rcx, qword [rax + 0x10]
cmp rcx, 0xe
jbe 0x14007771f
lea eax, [rcx + 1]
test al, 3
jne 0x14007771f
lea r15, [rcx - 0xb]
mov byte [rsp + 0x31], 0
lea rdx, [rbp - 0x60]
lea rcx, [rsp + 0x31]
call fcn.1400899e0
mov r8, rax
lea r14, [rax + 0x1e]
mov byte [r14 + 0xa], 0
xor r11d, r11d
mov rdi, r14
nop dword [rax + rax]
lea esi, [r11 + r11*2]
movzx ecx, byte [rsi + r8]
mov byte [rdi], cl
movzx eax, r11b
add al, al
lea ebx, [rax + r11]
movzx r9d, bl
add r9b, byte [r8 + 0x2b]
xor r9b, cl
mov byte [rdi], r9b
xor dl, dl
lea eax, [rsi + 1]
movzx r10d, byte [rax + r8]
nop dword [rax]
movzx eax, r10b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140076e76
inc dl
cmp dl, 4
jne 0x140076e60
jmp 0x140076e84
movsx ecx, r9b
movzx eax, byte [r8 + 0x2e]
btc ecx, eax
mov byte [rdi], cl
mov dl, 5
lea eax, [rsi + 2]
mov r10d, eax
movzx r9d, byte [rax + r8]
movzx eax, r9b
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140076ea7
inc dl
cmp dl, 8
jne 0x140076e91
jmp 0x140076eb4
movsx ecx, byte [rdi]
movzx eax, byte [r8 + 0x2d]
btc ecx, eax
mov byte [rdi], cl
xor cl, cl
movzx edx, byte [r10 + r8]
nop dword [rax + rax]
movzx eax, dl
sar al, cl
test al, 1
jne 0x140076ed2
inc cl
cmp cl, 5
jne 0x140076ec0
jmp 0x140076edf
movsx ecx, byte [rdi]
movzx eax, byte [r8 + 0x2c]
btc ecx, eax
mov byte [rdi], cl
add bl, byte [r8 + 0x2a]
xor byte [rdi], bl
inc r11d
inc rdi
cmp r11d, 0xa
jne 0x140076e30
lea r9d, [r11 + 1]
mov r8, r15
mov rdx, r14
mov rcx, r12
call fcn.140089900
xorps xmm0, xmm0
cmp rax, 0xffffffffffffffff
je 0x140076f61
movups xmmword [rbp + 0x390], xmm0
xor eax, eax
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3a8], rax
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x390]
call fcn.14008f2b0
mov edi, reloc.WS2_32.dll_recv
mov rcx, r12
call fcn.14008f6e0
nop
mov rcx, r13
call fcn.14008f6e0
mov r15, qword [rbp - 0x10]
mov rbx, qword [rsp + 0x70]
jmp 0x140077765
mov rax, qword [r12 + 0x10]
lea rcx, [rax - 0xb]
movups xmmword [rbp + 0x5c0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x5d0], xmm1
cmp rax, rcx
jb 0x140079de0
mov rax, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x140076f94
mov rax, qword [r12]
lea rdx, [rcx + rax]
mov r8d, 1
lea rcx, [rbp + 0x5c0]
call fcn.14008f2b0
lea rcx, [rbp + 0x5c0]
cmp qword [rbp + 0x5d8], 0xf
cmova rcx, qword [rbp + 0x5c0]
call fcn.14034339c
mov ebx, eax
mov dword [rsp + 0x44], eax
lea rcx, [rbp + 0x5c0]
call fcn.14008f6e0
mov rax, qword [r12 + 0x10]
lea rcx, [rax - 0xa]
xorps xmm0, xmm0
movups xmmword [rbp + 0x5e0], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x5f0], xmm1
cmp rax, rcx
jb 0x140079de6
mov rax, r12
cmp qword [r12 + 0x18], 0xf
jbe 0x14007700e
mov rax, qword [r12]
lea rdx, [rcx + rax]
mov r8d, 0xa
lea rcx, [rbp + 0x5e0]
call fcn.14008f2b0
lea rcx, [rbp + 0x5e0]
cmp qword [rbp + 0x5f8], 0xf
cmova rcx, qword [rbp + 0x5e0]
call fcn.1403433c8
mov rdi, rax
lea rcx, [rbp + 0x5e0]
call fcn.14008f6e0
cmp ebx, 2
ja 0x1400776ce
mov eax, 0xffffffff
cmp rdi, rax
ja 0x1400776ce
mov dword [0x1403f75a8], edi
xorps xmm0, xmm0
movups xmmword [rbp + 0x3d0], xmm0
xor esi, esi
mov qword [rbp + 0x3e0], rsi
mov qword [rbp + 0x3e8], rsi
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x3d0]
call fcn.14008f2b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], rsi
mov qword [rbp + 0x368], rsi
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x350]
call fcn.14008f2b0
nop
mov byte [rsp + 0x32], sil
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x32]
call fcn.140089a40
mov r10, rax
mov byte [rax + 0x100], sil
mov r8d, esi
lea r9, [rax + 0xc0]
nop word [rax + rax]
lea edx, [r8 + r8*2]
movzx ecx, byte [rdx + r10]
mov byte [r9], cl
movzx eax, r8b
add al, al
lea r11d, [rax + r8]
add r11b, byte [r10 + 0x103]
xor r11b, cl
mov byte [r9], r11b
xor dil, dil
lea eax, [rdx + 1]
movzx edx, byte [rax + r10]
nop
movzx eax, dl
movzx ecx, dil
sar al, cl
test al, 1
jne 0x140077148
inc dil
cmp dil, 4
jne 0x140077130
jmp 0x14007715a
movsx ecx, r11b
movzx eax, byte [r10 + 0x106]
btc ecx, eax
mov byte [r9], cl
mov dl, 5
lea eax, [r8 + 1]
lea eax, [r8 + rax*2]
movzx edi, byte [rax + r10]
nop dword [rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140077186
inc dl
cmp dl, 8
jne 0x140077170
jmp 0x140077198
movsx ecx, byte [r9]
movzx eax, byte [r10 + 0x105]
btc ecx, eax
mov byte [r9], cl
xor dl, dl
lea eax, [r8 + 1]
lea eax, [r8 + rax*2]
movzx edi, byte [rax + r10]
nop word [rax + rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x1400771c6
inc dl
cmp dl, 5
jne 0x1400771b0
jmp 0x1400771d8
movsx ecx, byte [r9]
movzx eax, byte [r10 + 0x104]
btc ecx, eax
mov byte [r9], cl
movzx eax, r8b
add al, al
lea ecx, [rax + r8]
add cl, byte [r10 + 0x102]
xor byte [r9], cl
inc r8d
inc r9
cmp r8d, 0x40
jne 0x140077100
xorps xmm0, xmm0
movups xmmword [rbp + 0x490], xmm0
mov qword [rbp + 0x4a0], rsi
mov qword [rbp + 0x4a8], rsi
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [r10 + r8 + 0xc0], 0
jne 0x140077220
lea rdx, [r10 + 0xc0]
lea rcx, [rbp + 0x490]
call fcn.14008f2b0
nop
mov r14, qword [rbp + 0x4a8]
mov r15, qword [rbp + 0x490]
cmp qword [r12 + 0x10], 0xb
je 0x140077309
nop dword [rax]
xor bl, bl
nop dword [rax]
nop word [rax + rax]
lea rdi, [rbp + 0x490]
cmp r14, 0xf
cmova rdi, r15
mov rdx, rsi
mov rcx, r12
call fcn.140089c30
mov rdx, rax
movsx rax, bl
movzx ecx, byte [rax + rdi]
cmp byte [rdx], cl
je 0x1400772a2
inc bl
cmp bl, 0x40
jne 0x140077270
jmp 0x1400772f4
mov rcx, qword [rbp + 0x3e0]
mov rdx, qword [rbp + 0x3e8]
cmp rcx, rdx
jae 0x1400772dd
lea rax, [rcx + 1]
mov qword [rbp + 0x3e0], rax
lea rax, [rbp + 0x3d0]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x3d0]
mov byte [rax + rcx], bl
mov byte [rax + rcx + 1], 0
jmp 0x1400772f4
movzx r9d, bl
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x3d0]
call fcn.14008d2d0
inc rsi
mov rax, qword [r12 + 0x10]
sub rax, 0xb
cmp rsi, rax
jne 0x140077260
lea rdi, [rbp + 0x490]
cmp r14, 0xf
cmova rdi, r15
xor eax, eax
mov rcx, qword [rbp + 0x4a0]
rep stosb byte [rdi], al
mov rbx, qword [rbp + 0x3e0]
test rbx, rbx
je 0x14007753b
mov edi, 2
mov r14, qword [rbp + 0x3e8]
mov rsi, qword [rbp + 0x3d0]
nop word [rax + rax]
lea rcx, [rdi - 2]
cmp rbx, rcx
jbe 0x140079dec
lea rax, [rbp + 0x3d0]
cmp r14, 0xf
seta dl
cmova rax, rsi
movzx ecx, byte [rcx + rax]
and cl, 0x3f
lea r9, [rdi - 1]
cmp rbx, r9
jbe 0x140079dec
lea rax, [rbp + 0x3d0]
test dl, dl
cmovne rax, rsi
shl cl, 2
movzx r9d, byte [r9 + rax]
sar r9b, 4
and r9b, 3
or r9b, cl
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x1400773df
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400773f2
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
lea rax, [rdi - 1]
cmp rbx, rax
jbe 0x140079dec
lea rax, [rbp + 0x3d0]
cmp r14, 0xf
cmova rax, rsi
movzx ecx, byte [rax + rdi - 1]
and cl, 0xf
cmp rbx, rdi
jbe 0x140079dec
lea rax, [rbp + 0x3d0]
cmp r14, 0xf
cmova rax, rsi
shl cl, 4
movzx r9d, byte [rdi + rax]
sar r9b, 2
and r9b, 0xf
or r9b, cl
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x14007747d
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140077490
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
cmp rbx, rdi
jbe 0x140079dec
lea rax, [rbp + 0x3d0]
cmp r14, 0xf
cmova rax, rsi
movzx r9d, byte [rdi + rax]
and r9b, 3
lea rcx, [rdi + 1]
cmp rbx, rcx
jbe 0x140079dec
lea rax, [rbp + 0x3d0]
cmp r14, 0xf
cmova rax, rsi
movzx ecx, byte [rax + rcx]
and cl, 0x3f
shl r9b, 6
or r9b, cl
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140077517
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x14007752a
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
add rdi, 4
lea rax, [rdi - 2]
cmp rax, rbx
jb 0x140077350
xor ebx, ebx
mov edi, ebx
mov r9, qword [rbp + 0x360]
test r9, r9
je 0x1400775d8
mov r8d, dword [0x1403f75a8]
mov r10d, 0xffffffff
nop dword [rax]
test edi, edi
je 0x14007756e
lea ecx, [rdi - 1]
call fcn.14008bd50
jmp 0x140077571
mov rax, r8
imul rax, rax, 0x19660d
xor edx, edx
div r10
lea rax, [rdx + 0x3c6ef35f]
xor edx, edx
div qword [r13 + 0x10]
cmp qword [r13 + 0x10], rdx
jbe 0x140079dec
mov rcx, r13
cmp qword [r13 + 0x18], 0xf
jbe 0x1400775a2
mov rcx, qword [r13]
movzx ecx, byte [rdx + rcx]
cmp r9, rdi
jbe 0x140079dec
lea rax, [rbp + 0x350]
cmp qword [rbp + 0x368], 0xf
cmova rax, qword [rbp + 0x350]
xor byte [rdi + rax], cl
inc rdi
mov r9, qword [rbp + 0x360]
cmp rdi, r9
jb 0x140077560
movsx rax, byte [rsp + 0x44]
mov r8, r9
sub r8, rax
xorps xmm0, xmm0
movups xmmword [rbp + 0x370], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 0x380], xmm1
cmp r9, r8
cmovb r8, r9
lea rdx, [rbp + 0x350]
cmp qword [rbp + 0x368], 0xf
cmova rdx, qword [rbp + 0x350]
lea rcx, [rbp + 0x370]
call fcn.14008f2b0
nop
lea rdx, [rbp + 0x370]
cmp qword [rbp + 0x388], 0xf
cmova rdx, qword [rbp + 0x370]
xorps xmm0, xmm0
movups xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], rbx
mov qword [rbp + 0x3a8], rbx
mov r8, 0xffffffffffffffff
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x140077660
lea rcx, [rbp + 0x390]
call fcn.14008f2b0
mov edi, 0xf0
lea rcx, [rbp + 0x370]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x490]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x350]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x3d0]
call fcn.14008f6e0
nop
mov rcx, r12
call fcn.14008f6e0
nop
mov rcx, r13
call fcn.14008f6e0
mov r15, qword [rbp - 0x10]
mov rbx, qword [rsp + 0x70]
jmp 0x140077765
xorps xmm0, xmm0
movups xmmword [rbp + 0x390], xmm0
xor eax, eax
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3a8], rax
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x390]
call fcn.14008f2b0
mov edi, Ordinal_211
mov rcx, r12
call fcn.14008f6e0
nop
mov rcx, r13
call fcn.14008f6e0
mov r15, qword [rbp - 0x10]
mov rbx, qword [rsp + 0x70]
jmp 0x140077765
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x390], xmm0
mov qword [rbp + 0x3a0], rax
mov qword [rbp + 0x3a8], rax
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x390]
call fcn.14008f2b0
mov edi, reloc.WS2_32.dll_recv
mov rcx, r12
call fcn.14008f6e0
nop
mov rcx, r13
call fcn.14008f6e0
or edi, 8
mov rcx, qword [rsp + 0x38]
call fcn.14008f6e0
nop
mov rcx, qword [rsp + 0x60]
call fcn.14008f6e0
nop
cmp qword [rbp + 0x3a0], 0
je 0x140079596
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x4b0]
call fcn.14036e980
xorps xmm0, xmm0
movups xmmword [rbp + 0x370], xmm0
xor r12d, r12d
mov qword [rbp + 0x380], r12
mov qword [rbp + 0x388], r12
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x370]
call fcn.14008f2b0
nop
lea rax, [0x140000000]
lea rax, [rax + 0x39d178]
mov qword [rbp + 0x4b0], rax
lea rax, [0x14039d180]
mov qword [rbp + 0x4c0], rax
mov qword [rbp + 0x550], r12
mov qword [rbp + 0x558], r12
mov dword [rbp + 0x560], r12d
mov qword [rbp + 0x568], r12
xorps xmm0, xmm0
movdqa xmmword [rbp + 0x570], xmm0
xorps xmm1, xmm1
movdqa xmmword [rbp + 0x580], xmm1
lea rax, vtable.std::basic_ios_char__struct_std::char_traits_char__.0
mov qword [rbp + 0x548], rax
movdqa xmmword [rbp + 0x590], xmm0
mov byte [rbp + 0x5a0], r12b
bts edi, 9
mov dword [rsp + 0x44], edi
mov dword [rsp + 0x38], edi
lea rdx, [rbp + 0x4c8]
lea rcx, [rbp + 0x4b0]
call fcn.140074b40
nop
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_stringstream_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + rcx + 0x4b0], rax
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x98]
mov dword [rbp + rcx + 0x4ac], edx
lea rax, [rbp + 0x4c8]
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0x4c8]
call fcn.140080e40
nop
lea rax, vtable.std::basic_stringbuf_char__struct_std::char_traits_char___class_std::allocator_char__.0
mov qword [rbp + 0x4c8], rax
lea rdx, [rbp + 0x370]
cmp qword [rbp + 0x388], 0xf
cmova rdx, qword [rbp + 0x370]
xor r9d, r9d
mov r8, qword [rbp + 0x380]
lea rcx, [rbp + 0x4c8]
call fcn.140074be0
nop
lea rcx, [rbp + 0x370]
call fcn.14008f6e0
lea rdx, [rbp + 0x390]
cmp qword [rbp + 0x3a8], 0xf
cmova rdx, qword [rbp + 0x390]
mov r8, qword [rbp + 0x3a0]
lea rcx, [rbp + 0x4c0]
call fcn.140075820
mov rdx, qword [rbp + 0x4b0]
movsxd rax, dword [rdx + 4]
test byte [rbp + rax + 0x4c0], 1
jne 0x140079589
nop word [rax + rax]
movsxd rax, dword [rdx + 4]
mov rcx, qword [rbp + rax + 0x4f0]
mov rcx, qword [rcx + 8]
mov qword [rbp], rcx
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
lea rcx, [rbp - 8]
call fcn.140080ae0
mov rcx, rax
mov rax, qword [rax]
mov dl, 0xa
call qword [rax + 0x40]
movzx edi, al
mov rcx, qword [rbp]
test rcx, rcx
je 0x140077993
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rax
test rax, rax
je 0x140077993
mov rax, qword [rax]
mov edx, 1
call qword [rax]
movzx r8d, dil
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 0x4b0]
call fcn.140075ea0
cmp qword [rbp + 0x480], 2
jbe 0x14007956a
mov byte [rsp + 0x31], 0
lea rax, [rsp + 0x31]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x430]
lea r8, [rbp + 0x450]
lea rdx, [rbp + 0x470]
call fcn.140076270
test al, al
je 0x140079565
call fcn.14034245c
mov r13d, eax
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x48], rax
mov rdx, rbx
lea rcx, [rbp + 0xe8]
call fcn.14008c3d0
mov rdi, rax
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0x108]
call fcn.14008c3d0
mov rsi, rax
mov qword [rsp + 0x48], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x60], rax
mov rdx, rdi
lea rcx, [rbp + 0xc8]
call fcn.14008c3d0
mov rbx, rax
mov qword [rsp + 0x68], rax
mov rdx, rsi
lea rcx, [rbp + 0xa8]
call fcn.14008c3d0
mov r14, rax
mov qword [rsp + 0x60], rax
mov dword [0x1403f75a8], r13d
xorps xmm0, xmm0
movups xmmword [rbp + 0x3b0], xmm0
mov qword [rbp + 0x3c0], r12
mov qword [rbp + 0x3c8], r12
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x3b0]
call fcn.14008f2b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r12
mov qword [rbp + 0x368], r12
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x350]
call fcn.14008f2b0
nop
mov qword [rsp + 0x38], r12
xor sil, sil
mov rdi, r12
mov r8, qword [r14 + 0x10]
test r8, r8
je 0x140077bae
test edi, edi
je 0x140077af4
lea ecx, [rdi - 1]
call fcn.14008bd50
jmp 0x140077afa
mov eax, dword [0x1403f75a8]
imul rax, rax, 0x19660d
xor edx, edx
mov r9d, 0xffffffff
div r9
lea rax, [rdx + 0x3c6ef35f]
xor edx, edx
div qword [rbx + 0x10]
cmp qword [rbx + 0x10], rdx
jbe 0x140079df2
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x140077b30
mov rax, qword [rbx]
cmp r8, rdi
jbe 0x140079df2
mov r9, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140077b46
mov r9, qword [r14]
movzx r9d, byte [rdi + r9]
xor r9b, byte [rdx + rax]
mov rcx, qword [rbp + 0x3c0]
mov rdx, qword [rbp + 0x3c8]
cmp rcx, rdx
jae 0x140077b8b
lea rax, [rcx + 1]
mov qword [rbp + 0x3c0], rax
lea rax, [rbp + 0x3b0]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x3b0]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], sil
jmp 0x140077b9e
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x3b0]
call fcn.14008d2d0
inc rdi
mov r8, qword [r14 + 0x10]
cmp rdi, r8
jb 0x140077ae6
mov byte [rsp + 0x32], sil
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x32]
call fcn.14008bd90
mov r11, rax
mov byte [rax + 0x100], sil
mov r9d, r12d
lea r10, [rax + 0xc0]
nop dword [rax + rax]
lea edx, [r9 + r9*2]
movzx ecx, byte [rdx + r11]
mov byte [r10], cl
movzx eax, r9b
add al, al
lea r8d, [rax + r9]
add r8b, byte [r11 + 0x103]
xor r8b, cl
mov byte [r10], r8b
xor dil, dil
lea eax, [rdx + 1]
movzx edx, byte [rax + r11]
nop
movzx eax, dl
movzx ecx, dil
sar al, cl
test al, 1
jne 0x140077c28
inc dil
cmp dil, 4
jne 0x140077c10
jmp 0x140077c3a
movsx ecx, r8b
movzx eax, byte [r11 + 0x106]
btc ecx, eax
mov byte [r10], cl
mov dl, 5
lea eax, [r9 + 1]
lea eax, [r9 + rax*2]
movzx edi, byte [rax + r11]
nop dword [rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140077c66
inc dl
cmp dl, 8
jne 0x140077c50
jmp 0x140077c78
movsx ecx, byte [r10]
movzx eax, byte [r11 + 0x105]
btc ecx, eax
mov byte [r10], cl
xor dl, dl
lea eax, [r9 + 1]
lea eax, [r9 + rax*2]
movzx edi, byte [rax + r11]
nop word [rax + rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140077ca6
inc dl
cmp dl, 5
jne 0x140077c90
jmp 0x140077cb8
movsx ecx, byte [r10]
movzx eax, byte [r11 + 0x104]
btc ecx, eax
mov byte [r10], cl
movzx eax, r9b
add al, al
lea ecx, [rax + r9]
add cl, byte [r11 + 0x102]
xor byte [r10], cl
inc r9d
inc r10
cmp r9d, 0x40
jne 0x140077be0
xorps xmm0, xmm0
movups xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r12
mov qword [rbp + 0x388], r12
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [r11 + r8 + 0xc0], sil
jne 0x140077d00
lea rdx, [r11 + 0xc0]
lea rcx, [rbp + 0x370]
call fcn.14008f2b0
nop
mov r15, qword [rbp + 0x388]
mov r12, qword [rbp + 0x370]
mov rbx, qword [rbp + 0x3c0]
mov rdx, qword [rsp + 0x38]
test rbx, rbx
je 0x14007800d
mov edi, 2
mov rsi, qword [rbp + 0x3c8]
mov r14, qword [rbp + 0x3b0]
cmp rbx, rdx
jbe 0x140079df8
lea rax, [rbp + 0x3b0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rax + rdx]
sar al, 2
and al, 0x3f
movzx ecx, al
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rcx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140077dcb
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rcx + rax], r9b
mov byte [rcx + rax + 1], 0
jmp 0x140077dde
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
lea rax, [rbp + 0x3b0]
cmp rsi, 0xf
cmova rax, r14
mov rdx, qword [rsp + 0x38]
movzx edx, byte [rdx + rax]
and dl, 3
lea rcx, [rdi - 1]
cmp rcx, rbx
jb 0x140077e06
xor al, al
jmp 0x140077e19
lea rax, [rbp + 0x3b0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rcx + rax]
movsx rcx, al
sar rcx, 4
and ecx, 0xf
shl dl, 4
movzx eax, dl
or rcx, rax
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rax + rcx]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140077e7d
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140077e90
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
lea rax, [rdi - 1]
cmp rax, rbx
jb 0x140077e9d
xor ecx, ecx
jmp 0x140077ea1
lea rcx, [rdi - 1]
cmp rbx, rcx
jbe 0x140079df8
lea rax, [rbp + 0x3b0]
cmp rsi, 0xf
cmova rax, r14
movzx edx, byte [rax + rcx]
and dl, 0xf
cmp rdi, rbx
setae byte [rsp + 0x30]
jb 0x140077ece
xor al, al
jmp 0x140077ee1
lea rax, [rbp + 0x3b0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rdi + rax]
sar al, 6
and al, 3
movzx ecx, al
shl dl, 2
movzx edx, dl
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
or rdx, rcx
movzx r9d, byte [rdx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140077f42
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140077f55
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
mov rcx, rdi
cmp rdi, rbx
mov eax, 0
cmovae rcx, rax
cmp rbx, rcx
jbe 0x140079df8
lea rax, [rbp + 0x3b0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rcx + rax]
and al, 0x3f
movzx ecx, al
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rcx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140077fd5
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140077fe8
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
mov rdx, qword [rsp + 0x38]
add rdx, 3
mov qword [rsp + 0x38], rdx
add rdi, 3
cmp rbx, rdx
ja 0x140077d60
movzx esi, byte [rsp + 0x30]
mov r14, qword [rsp + 0x60]
lea rdi, [rbp + 0x370]
cmp r15, 0xf
cmova rdi, r12
xor eax, eax
mov rcx, qword [rbp + 0x380]
rep stosb byte [rdi], al
xor r15d, r15d
mov edi, r15d
test sil, sil
je 0x14007803f
sub rbx, rdx
cmp rbx, 0xfffffffffffffffe
sete dil
inc edi
lea r9, [rbp + 0x615]
mov r8d, r13d
nop dword [rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x140078050
lea r8, [rbp + 0x615]
mov rdx, r9
lea rcx, [rbp + 0x28]
call fcn.14008d480
mov esi, dword [rsp + 0x40]
or esi, 0x18000
lea r9, [rbp + 0x5f5]
nop
dec r9
mov eax, 0xcccccccd
mul r13d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r13b, cl
add r13b, 0x30
mov byte [r9], r13b
mov r13d, edx
test edx, edx
jne 0x1400780a0
lea r8, [rbp + 0x5f5]
mov rdx, r9
lea rcx, [rbp + 0x48]
call fcn.14008d480
or esi, 0x60000
mov edx, 0xa
sub rdx, qword [rbp + 0x58]
mov r8b, Ordinal_50
lea rcx, [rbp - 0x60]
call fcn.14008f050
mov rbx, rax
lea r9, [rbp + 0x5d5]
nop dword [rax]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul edi
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub dil, cl
add dil, 0x30
mov byte [r9], dil
mov edi, edx
test edx, edx
jne 0x140078110
lea r8, [rbp + 0x5d5]
mov rdx, r9
lea rcx, [rbp + 0x68]
call fcn.14008d480
or esi, 0x180000
lea r8, [rbp + 0x350]
cmp qword [rbp + 0x368], 0xf
cmova r8, qword [rbp + 0x350]
mov r9, qword [rbp + 0x360]
lea rcx, [rbp + 0x68]
call fcn.14008c1b0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], dil
bts esi, 0x15
mov r9, rbx
lea r8, [rbp + 8]
lea rcx, [rbp + 0x88]
call fcn.14008e7f0
bts esi, 0x16
lea r9, [rbp + 0x28]
lea r8, [rbp + 0x88]
lea rcx, [rsp + 0x78]
call fcn.14008e7f0
or esi, 0x804000
lea rcx, [rbp + 0x88]
call fcn.14008f6e0
nop
lea rcx, [rbp + 8]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x68]
call fcn.14008f6e0
nop
lea rcx, [rbp - 0x60]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x48]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x28]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x370]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x350]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x3b0]
call fcn.14008f6e0
nop
mov rcx, r14
call fcn.14008f6e0
nop
mov rcx, qword [rsp + 0x68]
call fcn.14008f6e0
bts esi, 0xd
mov dword [rsp + 0x40], esi
mov rcx, qword [rsp + 0x48]
call fcn.14008f6e0
nop
mov rcx, qword [rsp + 0x50]
call fcn.14008f6e0
mov rdx, qword [rbp + 0x448]
cmp rdx, 0xf
jbe 0x1400782a3
inc rdx
mov rcx, qword [rbp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007829e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140079dfe
call fcn.14033b310
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rbp + 0x430], xmm0
movups xmm1, xmmword [rbp - 0x78]
movups xmmword [rbp + 0x440], xmm1
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x78], 0
lea rcx, [rsp + 0x78]
call fcn.14008f6e0
call fcn.14034245c
mov r13d, eax
lea rax, [rbp - 0x60]
mov qword [rsp + 0x50], rax
lea rdx, [rbp + 0x450]
lea rcx, [rbp - 0x60]
call fcn.14008c3d0
mov rdi, rax
mov qword [rsp + 0x60], rax
lea rdx, [rbp + 0x430]
lea rcx, [rbp + 0xa8]
call fcn.14008c3d0
mov rsi, rax
mov qword [rsp + 0x68], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x50], rax
mov rdx, rdi
lea rcx, [rbp + 0xc8]
call fcn.14008c3d0
mov rbx, rax
mov qword [rsp + 0x48], rax
mov rdx, rsi
lea rcx, [rbp + 0x108]
call fcn.14008c3d0
mov r14, rax
mov qword [rsp + 0x50], rax
mov dword [0x1403f75a8], r13d
xorps xmm0, xmm0
movups xmmword [rbp + 0x3f0], xmm0
mov qword [rbp + 0x400], r15
mov qword [rbp + 0x408], r15
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x3f0]
call fcn.14008f2b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r15
mov qword [rbp + 0x368], r15
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x350]
call fcn.14008f2b0
nop
mov qword [rsp + 0x38], r15
xor sil, sil
mov rdi, r15
mov r8, qword [r14 + 0x10]
test r8, r8
je 0x140078498
test edi, edi
je 0x1400783de
lea ecx, [rdi - 1]
call fcn.14008bd50
jmp 0x1400783e4
mov eax, dword [0x1403f75a8]
imul rax, rax, 0x19660d
xor edx, edx
mov r9d, 0xffffffff
div r9
lea rax, [rdx + 0x3c6ef35f]
xor edx, edx
div qword [rbx + 0x10]
cmp qword [rbx + 0x10], rdx
jbe 0x140079e04
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x14007841a
mov rax, qword [rbx]
cmp r8, rdi
jbe 0x140079e04
mov r9, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140078430
mov r9, qword [r14]
movzx r9d, byte [rdi + r9]
xor r9b, byte [rdx + rax]
mov rcx, qword [rbp + 0x400]
mov rdx, qword [rbp + 0x408]
cmp rcx, rdx
jae 0x140078475
lea rax, [rcx + 1]
mov qword [rbp + 0x400], rax
lea rax, [rbp + 0x3f0]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x3f0]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], sil
jmp 0x140078488
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x3f0]
call fcn.14008d2d0
inc rdi
mov r8, qword [r14 + 0x10]
cmp rdi, r8
jb 0x1400783d0
mov byte [rsp + 0x30], sil
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x30]
call fcn.14008bd90
mov r11, rax
mov byte [rax + 0x100], sil
mov r9d, r15d
lea r10, [rax + 0xc0]
nop dword [rax]
nop word [rax + rax]
lea edx, [r9 + r9*2]
movzx ecx, byte [rdx + r11]
mov byte [r10], cl
movzx eax, r9b
add al, al
lea r8d, [rax + r9]
add r8b, byte [r11 + 0x103]
xor r8b, cl
mov byte [r10], r8b
xor dil, dil
lea eax, [rdx + 1]
movzx edx, byte [rax + r11]
nop
movzx eax, dl
movzx ecx, dil
sar al, cl
test al, 1
jne 0x140078518
inc dil
cmp dil, 4
jne 0x140078500
jmp 0x14007852a
movsx ecx, r8b
movzx eax, byte [r11 + 0x106]
btc ecx, eax
mov byte [r10], cl
mov dl, 5
lea eax, [r9 + 1]
lea eax, [r9 + rax*2]
movzx edi, byte [rax + r11]
nop dword [rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140078556
inc dl
cmp dl, 8
jne 0x140078540
jmp 0x140078568
movsx ecx, byte [r10]
movzx eax, byte [r11 + 0x105]
btc ecx, eax
mov byte [r10], cl
xor dl, dl
lea eax, [r9 + 1]
lea eax, [r9 + rax*2]
movzx edi, byte [rax + r11]
nop word [rax + rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140078596
inc dl
cmp dl, 5
jne 0x140078580
jmp 0x1400785a8
movsx ecx, byte [r10]
movzx eax, byte [r11 + 0x104]
btc ecx, eax
mov byte [r10], cl
movzx eax, r9b
add al, al
lea ecx, [rax + r9]
add cl, byte [r11 + 0x102]
xor byte [r10], cl
inc r9d
inc r10
cmp r9d, 0x40
jne 0x1400784d0
xorps xmm0, xmm0
movups xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
mov qword [rbp + 0x388], r15
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [r11 + r8 + 0xc0], sil
jne 0x1400785f0
lea rdx, [r11 + 0xc0]
lea rcx, [rbp + 0x370]
call fcn.14008f2b0
nop
mov r15, qword [rbp + 0x388]
mov r12, qword [rbp + 0x370]
mov rbx, qword [rbp + 0x400]
mov rdx, qword [rsp + 0x38]
test rbx, rbx
je 0x1400788ff
mov edi, 2
mov rsi, qword [rbp + 0x408]
mov r14, qword [rbp + 0x3f0]
cmp rbx, rdx
jbe 0x140079e0a
lea rax, [rbp + 0x3f0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rax + rdx]
sar al, 2
and al, 0x3f
movzx ecx, al
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rcx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x1400786bb
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400786ce
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
lea rax, [rbp + 0x3f0]
cmp rsi, 0xf
cmova rax, r14
mov rdx, qword [rsp + 0x38]
movzx edx, byte [rax + rdx]
and dl, 3
lea rcx, [rdi - 1]
cmp rcx, rbx
jb 0x1400786f6
xor al, al
jmp 0x140078709
lea rax, [rbp + 0x3f0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rcx + rax]
movsx rcx, al
sar rcx, 4
and ecx, 0xf
shl dl, 4
movzx eax, dl
or rcx, rax
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rax + rcx]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x14007876d
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140078780
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
lea rax, [rdi - 1]
cmp rax, rbx
jb 0x14007878f
xor eax, eax
mov ecx, eax
jmp 0x140078793
lea rcx, [rdi - 1]
cmp rbx, rcx
jbe 0x140079e0a
lea rax, [rbp + 0x3f0]
cmp rsi, 0xf
cmova rax, r14
movzx edx, byte [rax + rcx]
and dl, 0xf
cmp rdi, rbx
setae byte [rsp + 0x32]
jb 0x1400787c0
xor al, al
jmp 0x1400787d3
lea rax, [rbp + 0x3f0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rdi + rax]
sar al, 6
and al, 3
movzx ecx, al
shl dl, 2
movzx edx, dl
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
or rdx, rcx
movzx r9d, byte [rdx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140078834
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140078847
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
mov rcx, rdi
cmp rdi, rbx
mov eax, 0
cmovae rcx, rax
cmp rbx, rcx
jbe 0x140079e0a
lea rax, [rbp + 0x3f0]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rax + rcx]
and al, 0x3f
movzx ecx, al
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rcx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x1400788c7
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400788da
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
mov rdx, qword [rsp + 0x38]
add rdx, 3
mov qword [rsp + 0x38], rdx
add rdi, 3
cmp rbx, rdx
ja 0x140078650
movzx esi, byte [rsp + 0x32]
mov r14, qword [rsp + 0x50]
lea rdi, [rbp + 0x370]
cmp r15, 0xf
cmova rdi, r12
xor eax, eax
mov rcx, qword [rbp + 0x380]
rep stosb byte [rdi], al
xor r15d, r15d
mov edi, r15d
test sil, sil
je 0x140078931
sub rbx, rdx
cmp rbx, 0xfffffffffffffffe
sete dil
inc edi
lea r9, [rbp + 0x5d5]
mov r8d, r13d
nop dword [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x140078940
lea r8, [rbp + 0x5d5]
mov rdx, r9
lea rcx, [rbp + 0x88]
call fcn.14008d480
mov esi, dword [rsp + 0x40]
or esi, 0xc000000
lea r9, [rbp + 0x5f5]
dec r9
mov eax, 0xcccccccd
mul r13d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r13b, cl
add r13b, 0x30
mov byte [r9], r13b
mov r13d, edx
test edx, edx
jne 0x140078991
lea r8, [rbp + 0x5f5]
mov rdx, r9
lea rcx, [rbp + 0x68]
call fcn.14008d480
or esi, 0x30000000
mov edx, 0xa
sub rdx, qword [rbp + 0x78]
mov r8b, Ordinal_50
lea rcx, [rbp + 0xe8]
call fcn.14008f050
mov rbx, rax
lea r9, [rbp + 0x615]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul edi
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub dil, cl
add dil, 0x30
mov byte [r9], dil
mov edi, edx
test edx, edx
jne 0x140078a00
lea r8, [rbp + 0x615]
mov rdx, r9
lea rcx, [rbp + 0x48]
call fcn.14008d480
or esi, 0xc0000000
lea r8, [rbp + 0x350]
cmp qword [rbp + 0x368], 0xf
cmova r8, qword [rbp + 0x350]
mov r9, qword [rbp + 0x360]
lea rcx, [rbp + 0x48]
call fcn.14008c1b0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18], xmm1
mov qword [rax + 0x10], r15
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], dil
mov edi, dword [rsp + 0x44]
or edi, 1
mov r9, rbx
lea r8, [rbp + 8]
lea rcx, [rbp + 0x28]
call fcn.14008e7f0
or edi, 2
lea r9, [rbp + 0x88]
lea r8, [rbp + 0x28]
lea rcx, [rsp + 0x78]
call fcn.14008e7f0
or edi, 4
mov dword [rsp + 0x44], edi
bts esi, 0x19
lea rcx, [rbp + 0x28]
call fcn.14008f6e0
nop
lea rcx, [rbp + 8]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x48]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0xe8]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x68]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x88]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x370]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x350]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x3f0]
call fcn.14008f6e0
nop
mov rcx, r14
call fcn.14008f6e0
nop
mov rcx, qword [rsp + 0x48]
call fcn.14008f6e0
bts esi, 0x18
mov dword [rsp + 0x40], esi
mov rcx, qword [rsp + 0x68]
call fcn.14008f6e0
nop
mov rcx, qword [rsp + 0x60]
call fcn.14008f6e0
mov rdx, qword [rbp + 0x448]
cmp rdx, 0xf
jbe 0x140078b9a
inc rdx
mov rcx, qword [rbp + 0x430]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140078b95
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140079e10
call fcn.14033b310
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rbp + 0x430], xmm0
movups xmm1, xmmword [rbp - 0x78]
movups xmmword [rbp + 0x440], xmm1
mov qword [rbp - 0x78], r15
mov qword [rbp - 0x70], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x78], 0
lea rcx, [rsp + 0x78]
call fcn.14008f6e0
mov r13d, dword [rbp + 0x460]
xor r13d, 0xaf8d9a5e
lea rax, [rbp - 0x60]
mov qword [rsp + 0x50], rax
mov rdx, qword [rsp + 0x70]
lea rcx, [rbp - 0x60]
call fcn.14008c3d0
mov rdi, rax
mov qword [rsp + 0x60], rax
lea rdx, [rbp + 0x450]
lea rcx, [rbp + 0xa8]
call fcn.14008c3d0
mov rsi, rax
mov qword [rsp + 0x68], rax
lea rax, [rbp + 0xc8]
mov qword [rsp + 0x50], rax
mov rdx, rdi
lea rcx, [rbp + 0xc8]
call fcn.14008c3d0
mov rbx, rax
mov qword [rsp + 0x48], rax
mov rdx, rsi
lea rcx, [rbp + 0x108]
call fcn.14008c3d0
mov r14, rax
mov qword [rsp + 0x50], rax
mov dword [0x1403f75a8], r13d
xorps xmm0, xmm0
movups xmmword [rbp + 0x410], xmm0
mov qword [rbp + 0x420], r15
mov qword [rbp + 0x428], r15
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x410]
call fcn.14008f2b0
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0x350], xmm0
mov qword [rbp + 0x360], r15
mov qword [rbp + 0x368], r15
xor r8d, r8d
lea rdx, [0x14039e1f0]
lea rcx, [rbp + 0x350]
call fcn.14008f2b0
nop
mov qword [rsp + 0x38], r15
xor sil, sil
mov rdi, r15
mov r8, qword [r14 + 0x10]
test r8, r8
je 0x140078d98
nop dword [rax + rax]
test edi, edi
je 0x140078cde
lea ecx, [rdi - 1]
call fcn.14008bd50
jmp 0x140078ce4
mov eax, dword [0x1403f75a8]
imul rax, rax, 0x19660d
xor edx, edx
mov r9d, 0xffffffff
div r9
lea rax, [rdx + 0x3c6ef35f]
xor edx, edx
div qword [rbx + 0x10]
cmp qword [rbx + 0x10], rdx
jbe 0x140079e16
mov rax, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x140078d1a
mov rax, qword [rbx]
cmp r8, rdi
jbe 0x140079e16
mov r9, r14
cmp qword [r14 + 0x18], 0xf
jbe 0x140078d30
mov r9, qword [r14]
movzx r9d, byte [rdi + r9]
xor r9b, byte [rdx + rax]
mov rcx, qword [rbp + 0x420]
mov rdx, qword [rbp + 0x428]
cmp rcx, rdx
jae 0x140078d75
lea rax, [rcx + 1]
mov qword [rbp + 0x420], rax
lea rax, [rbp + 0x410]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x410]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], sil
jmp 0x140078d88
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x410]
call fcn.14008d2d0
inc rdi
mov r8, qword [r14 + 0x10]
cmp rdi, r8
jb 0x140078cd0
mov byte [rsp + 0x30], sil
lea rdx, [rbp + 0x130]
lea rcx, [rsp + 0x30]
call fcn.14008bd90
mov r11, rax
mov byte [rax + 0x100], sil
mov r9d, r15d
lea r10, [rax + 0xc0]
nop dword [rax]
nop word [rax + rax]
lea edx, [r9 + r9*2]
movzx ecx, byte [rdx + r11]
mov byte [r10], cl
movzx eax, r9b
add al, al
lea r8d, [rax + r9]
add r8b, byte [r11 + 0x103]
xor r8b, cl
mov byte [r10], r8b
xor dil, dil
lea eax, [rdx + 1]
movzx edx, byte [rax + r11]
nop
movzx eax, dl
movzx ecx, dil
sar al, cl
test al, 1
jne 0x140078e18
inc dil
cmp dil, 4
jne 0x140078e00
jmp 0x140078e2a
movsx ecx, r8b
movzx eax, byte [r11 + 0x106]
btc ecx, eax
mov byte [r10], cl
mov dl, 5
lea eax, [r9 + 1]
lea eax, [r9 + rax*2]
movzx edi, byte [rax + r11]
nop dword [rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140078e56
inc dl
cmp dl, 8
jne 0x140078e40
jmp 0x140078e68
movsx ecx, byte [r10]
movzx eax, byte [r11 + 0x105]
btc ecx, eax
mov byte [r10], cl
xor dl, dl
lea eax, [r9 + 1]
lea eax, [r9 + rax*2]
movzx edi, byte [rax + r11]
nop word [rax + rax]
movzx eax, dil
movzx ecx, dl
sar al, cl
test al, 1
jne 0x140078e96
inc dl
cmp dl, 5
jne 0x140078e80
jmp 0x140078ea8
movsx ecx, byte [r10]
movzx eax, byte [r11 + 0x104]
btc ecx, eax
mov byte [r10], cl
movzx eax, r9b
add al, al
lea ecx, [rax + r9]
add cl, byte [r11 + 0x102]
xor byte [r10], cl
inc r9d
inc r10
cmp r9d, 0x40
jne 0x140078dd0
xorps xmm0, xmm0
movups xmmword [rbp + 0x370], xmm0
mov qword [rbp + 0x380], r15
mov qword [rbp + 0x388], r15
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [r11 + r8 + 0xc0], sil
jne 0x140078ef0
lea rdx, [r11 + 0xc0]
lea rcx, [rbp + 0x370]
call fcn.14008f2b0
nop
mov r15, qword [rbp + 0x388]
mov r12, qword [rbp + 0x370]
mov rbx, qword [rbp + 0x420]
mov rdx, qword [rsp + 0x38]
test rbx, rbx
je 0x1400791ff
mov edi, 2
mov rsi, qword [rbp + 0x428]
mov r14, qword [rbp + 0x410]
cmp rbx, rdx
jbe 0x140079e22
lea rax, [rbp + 0x410]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rdx + rax]
sar al, 2
and al, 0x3f
movzx ecx, al
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rcx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140078fbb
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140078fce
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
lea rax, [rbp + 0x410]
cmp rsi, 0xf
cmova rax, r14
mov rdx, qword [rsp + 0x38]
movzx edx, byte [rdx + rax]
and dl, 3
lea rcx, [rdi - 1]
cmp rcx, rbx
jb 0x140078ff6
xor al, al
jmp 0x140079009
lea rax, [rbp + 0x410]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rcx + rax]
movsx rcx, al
sar rcx, 4
and ecx, 0xf
shl dl, 4
movzx eax, dl
or rcx, rax
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rax + rcx]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x14007906d
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140079080
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
lea rax, [rdi - 1]
cmp rax, rbx
jb 0x14007908f
xor eax, eax
mov ecx, eax
jmp 0x140079093
lea rcx, [rdi - 1]
cmp rbx, rcx
jbe 0x140079e1c
lea rax, [rbp + 0x410]
cmp rsi, 0xf
cmova rax, r14
movzx edx, byte [rax + rcx]
and dl, 0xf
cmp rdi, rbx
setae byte [rsp + 0x32]
jb 0x1400790c0
xor al, al
jmp 0x1400790d3
lea rax, [rbp + 0x410]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rdi + rax]
sar al, 6
and al, 3
movzx ecx, al
shl dl, 2
movzx edx, dl
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
or rdx, rcx
movzx r9d, byte [rdx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x140079134
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x140079147
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
mov rcx, rdi
cmp rdi, rbx
mov eax, 0
cmovae rcx, rax
cmp rbx, rcx
jbe 0x140079e1c
lea rax, [rbp + 0x410]
cmp rsi, 0xf
cmova rax, r14
movzx eax, byte [rax + rcx]
and al, 0x3f
movzx ecx, al
lea rax, [rbp + 0x370]
cmp r15, 0xf
cmova rax, r12
movzx r9d, byte [rcx + rax]
mov rcx, qword [rbp + 0x360]
mov rdx, qword [rbp + 0x368]
cmp rcx, rdx
jae 0x1400791c7
lea rax, [rcx + 1]
mov qword [rbp + 0x360], rax
lea rax, [rbp + 0x350]
cmp rdx, 0xf
cmova rax, qword [rbp + 0x350]
mov byte [rax + rcx], r9b
mov byte [rax + rcx + 1], 0
jmp 0x1400791da
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rbp + 0x350]
call fcn.14008d2d0
mov rdx, qword [rsp + 0x38]
add rdx, 3
mov qword [rsp + 0x38], rdx
add rdi, 3
cmp rbx, rdx
ja 0x140078f50
movzx esi, byte [rsp + 0x32]
mov r14, qword [rsp + 0x50]
lea rdi, [rbp + 0x370]
cmp r15, 0xf
cmova rdi, r12
xor eax, eax
mov rcx, qword [rbp + 0x380]
rep stosb byte [rdi], al
xor r12d, r12d
mov edi, r12d
test sil, sil
je 0x140079231
sub rbx, rdx
cmp rbx, 0xfffffffffffffffe
sete dil
inc edi
lea r9, [rbp + 0x5d5]
mov r8d, r13d
nop dword [rax + rax]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x140079240
lea r8, [rbp + 0x5d5]
mov rdx, r9
lea rcx, [rbp + 0x88]
call fcn.14008d480
mov esi, dword [rsp + 0x40]
or esi, 0x30
lea r9, [rbp + 0x5f5]
nop
dec r9
mov eax, 0xcccccccd
mul r13d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r13b, cl
add r13b, 0x30
mov byte [r9], r13b
mov r13d, edx
test edx, edx
jne 0x140079290
lea r8, [rbp + 0x5f5]
mov rdx, r9
lea rcx, [rbp + 0x68]
call fcn.14008d480
or esi, 0xc0
mov edx, 0xa
sub rdx, qword [rbp + 0x78]
mov r8b, Ordinal_50
lea rcx, [rbp + 0xe8]
call fcn.14008f050
mov rbx, rax
lea r9, [rbp + 0x615]
nop word [rax + rax]
dec r9
mov eax, 0xcccccccd
mul edi
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub dil, cl
add dil, 0x30
mov byte [r9], dil
mov edi, edx
test edx, edx
jne 0x140079300
lea r8, [rbp + 0x615]
mov rdx, r9
lea rcx, [rbp + 0x48]
call fcn.14008d480
or esi, 0x300
lea r8, [rbp + 0x350]
cmp qword [rbp + 0x368], 0xf
cmova r8, qword [rbp + 0x350]
mov r9, qword [rbp + 0x360]
lea rcx, [rbp + 0x48]
call fcn.14008c1b0
movups xmm0, xmmword [rax]
movups xmmword [rbp + 8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x18], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], dil
bts esi, 0xa
mov r9, rbx
lea r8, [rbp + 8]
lea rcx, [rbp + 0x28]
call fcn.14008e7f0
bts esi, 0xb
lea r9, [rbp + 0x88]
lea r8, [rbp + 0x28]
lea rcx, [rsp + 0x78]
call fcn.14008e7f0
or esi, 0x1008
lea rcx, [rbp + 0x28]
call fcn.14008f6e0
nop
lea rcx, [rbp + 8]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x48]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0xe8]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x68]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x88]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x370]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x350]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x410]
call fcn.14008f6e0
nop
mov rcx, r14
call fcn.14008f6e0
nop
mov rcx, qword [rsp + 0x48]
call fcn.14008f6e0
or esi, 4
mov dword [rsp + 0x40], esi
mov rcx, qword [rsp + 0x68]
call fcn.14008f6e0
nop
mov rcx, qword [rsp + 0x60]
call fcn.14008f6e0
mov rdx, qword [rbp + 0x468]
cmp rdx, 0xf
jbe 0x140079492
inc rdx
mov rcx, qword [rbp + 0x450]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14007948d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140079e28
call fcn.14033b310
movups xmm0, xmmword [rsp + 0x78]
movups xmmword [rbp + 0x450], xmm0
movups xmm1, xmmword [rbp - 0x78]
movups xmmword [rbp + 0x460], xmm1
mov qword [rbp - 0x78], r12
mov qword [rbp - 0x70], reloc.WS2_32.dll_ntohs
mov byte [rsp + 0x78], 0
lea rcx, [rsp + 0x78]
call fcn.14008f6e0
lea rdx, [rbp + 0x450]
lea rcx, [rbp - 0x60]
call fcn.14008c3d0
nop
lea rdx, [rbp + 0x430]
lea rcx, [rbp - 0x40]
call fcn.14008c3d0
movzx eax, byte [rsp + 0x31]
mov byte [rbp - 0x20], al
mov r15, qword [rbp - 0x10]
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x140079544
movaps xmm0, xmmword [rbp - 0x60]
movups xmmword [rdx], xmm0
movaps xmm1, xmmword [rbp - 0x50]
movups xmmword [rdx + 0x10], xmm1
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x60], 0
movaps xmm0, xmmword [rbp - 0x40]
movups xmmword [rdx + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x30]
movups xmmword [rdx + 0x30], xmm1
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x40], 0
mov byte [rdx + 0x40], al
add qword [r15 + 8], 0x48
jmp 0x140079551
lea r8, [rbp - 0x60]
mov rcx, r15
call fcn.140080450
nop
lea rcx, [rbp - 0x40]
call fcn.14008f6e0
lea rcx, [rbp - 0x60]
call fcn.14008f6e0
jmp 0x14007956a
mov byte [r15 + 0x39], 4
mov rdx, qword [rbp + 0x4b0]
movsxd rax, dword [rdx + 4]
test byte [rbp + rax + 0x4c0], 1
jne 0x140079589
mov rbx, qword [rsp + 0x70]
jmp 0x140077940
lea rcx, [rbp + 0x4b0]
call fcn.140075730
nop
lea rcx, [rbp + 0x390]
call fcn.14008f6e0
mov ebx, 6
lea r13d, [rbx - 4]
lea rsi, vtable.std::ios_base.0
jmp 0x140079734
mov rdx, qword [rbp + 0x240]
movsxd rax, dword [rdx + 4]
test byte [rbp + rax + 0x250], 1
jne 0x140079734
movsxd rax, dword [rdx + 4]
mov rcx, qword [rbp + rax + 0x280]
mov rcx, qword [rcx + 8]
mov qword [rbp], rcx
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_htonl]
nop
lea rcx, [rbp - 8]
call fcn.140080ae0
mov rcx, rax
mov rax, qword [rax]
mov dl, 0xa
call qword [rax + 0x40]
movzx edi, al
mov rcx, qword [rbp]
test rcx, rcx
je 0x140079623
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rax
test rax, rax
je 0x140079623
mov rax, qword [rax]
mov edx, 1
call qword [rax]
movzx r8d, dil
lea rdx, [rbp + 0x470]
lea rcx, [rbp + 0x240]
call fcn.140075ea0
cmp qword [rbp + 0x480], 2
jbe 0x14007971b
mov byte [rsp + 0x31], 0
lea rax, [rsp + 0x31]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x430]
lea r8, [rbp + 0x450]
lea rdx, [rbp + 0x470]
call fcn.140076270
test al, al
je 0x140079716
lea rdx, [rbp + 0x450]
lea rcx, [rbp - 0x60]
call fcn.14008c3d0
nop
lea rdx, [rbp + 0x430]
lea rcx, [rbp - 0x40]
call fcn.14008c3d0
movzx eax, byte [rsp + 0x31]
mov byte [rbp - 0x20], al
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x1400796f5
movaps xmm0, xmmword [rbp - 0x60]
movups xmmword [rdx], xmm0
movaps xmm1, xmmword [rbp - 0x50]
movups xmmword [rdx + 0x10], xmm1
mov qword [rbp - 0x50], r12
mov qword [rbp - 0x48], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x60], 0
movaps xmm0, xmmword [rbp - 0x40]
movups xmmword [rdx + 0x20], xmm0
movaps xmm1, xmmword [rbp - 0x30]
movups xmmword [rdx + 0x30], xmm1
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], reloc.WS2_32.dll_ntohs
mov byte [rbp - 0x40], 0
mov byte [rdx + 0x40], al
add qword [r15 + 8], 0x48
jmp 0x140079702
lea r8, [rbp - 0x60]
mov rcx, r15
call fcn.140080450
nop
lea rcx, [rbp - 0x40]
call fcn.14008f6e0
lea rcx, [rbp - 0x60]
call fcn.14008f6e0
jmp 0x14007971b
mov byte [r15 + 0x39], 4
mov rdx, qword [rbp + 0x240]
movsxd rax, dword [rdx + 4]
test byte [rbp + rax + 0x250], 1
je 0x1400795d0
lea rcx, [rbp + 0x250]
call fcn.140082e60
test rax, rax
jne 0x14007977d
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
cmp qword [rbp + rcx + 0x288], 0
cmovne ebx, r13d
or ebx, dword [rbp + rcx + 0x250]
and ebx, 0x17
mov dword [rbp + rcx + 0x250], ebx
mov eax, dword [rbp + rcx + 0x254]
and eax, ebx
jne 0x140079e2e
lea rcx, [rbp + 0x430]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x450]
call fcn.14008f6e0
nop
lea rcx, [rbp + 0x470]
call fcn.14008f6e0
jmp 0x140079bdf
mov rax, qword [r14 + 0x10]
mov rcx, r14
cmp qword [r14 + 0x18], 7
jbe 0x1400797b9
mov rcx, qword [r14]
test rax, rax
je 0x140079c62
dec rax
mov rdx, 0xffffffffffffffff
cmp rax, rdx
cmovb rdx, rax
lea r8, [rcx + rdx*2]
cmp word [r8], 0x5c
je 0x1400797f4
nop
cmp r8, rcx
je 0x140079c62
sub r8, 2
cmp word [r8], 0x5c
jne 0x1400797e0
sub r8, rcx
sar r8, 1
cmp r8, 0xffffffffffffffff
je 0x140079c62
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x78], xmm1
cmp qword [r14 + 0x10], r8
cmovb r8, qword [r14 + 0x10]
mov rdx, r14
cmp qword [r14 + 0x18], 7
jbe 0x14007982a
mov rdx, qword [r14]
lea rcx, [rsp + 0x78]
call fcn.14008dc70
lea rcx, [rsp + 0x78]
cmp qword [rbp - 0x70], 7
cmova rcx, qword [rsp + 0x78]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov edi, eax
lea rcx, [rsp + 0x78]
call fcn.14008e480
test edi, edi
jne 0x1400799d4
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
mov edx, 0xffffffff
nop word [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov esi, dword [rcx + r11 + 0x88]
add rsi, r11
cmp rsi, r11
je 0x14007990a
mov r10d, dword [rsi + 0x18]
test r10d, r10d
je 0x14007990a
mov ebx, dword [rsi + 0x20]
nop dword [rax]
nop dword [rax + rax]
add r10d, edx
lea rdx, [r11 + r10*4]
mov r8d, dword [rdx + rbx]
add r8, r11
mov r9d, 0xa5e1dc1
movzx ecx, byte [r8]
inc r8
test cl, cl
je 0x140079900
nop
movsx edx, cl
sub cl, 0x41
mov edi, edx
or edi, 0x20
cmp cl, 0x19
cmova edi, edx
xor edi, r9d
imul r9d, edi, 0x1000193
movzx ecx, byte [r8]
lea r8, [r8 + 1]
test cl, cl
jne 0x1400798d0
cmp r9d, 0x5c50b1db
je 0x140079912
test r10d, r10d
mov edx, 0xffffffff
jne 0x1400798b0
mov rax, qword [rax]
jmp 0x140079880
mov edx, dword [rsi + 0x1c]
add rdx, r11
mov ecx, dword [rsi + 0x24]
add rcx, r11
movzx ecx, word [rcx + r10*2]
mov eax, dword [rdx + rcx*4]
add rax, r11
call rax
cmp eax, 0xb7
je 0x1400799c8
mov byte [r15 + 0x39], 2
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x23c], edx
lea rcx, [rbp + 0x250]
call fcn.140081cd0
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x23c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x2f0], rax
lea rcx, [rbp + 0x2f0]
call fcn.1402e529c
nop
jmp 0x140079ce1
mov ebx, 6
lea rsi, vtable.std::ios_base.0
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x4b0]
call fcn.14036e980
mov r8d, r13d
mov rdx, r14
lea rcx, [rbp + 0x4b0]
call fcn.140076810
nop
cmp qword [rbp + 0x538], 0
jne 0x140079b15
mov byte [r15 + 0x39], 3
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x4b0], rax
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x4ac], edx
lea rcx, [rbp + 0x4b8]
call fcn.140081cd0
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x4b0], rax
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x4ac], edx
mov qword [rbp + 0x558], rsi
lea rcx, [rbp + 0x558]
call fcn.1402e529c
nop
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x23c], edx
lea rcx, [rbp + 0x250]
call fcn.140081cd0
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x23c], edx
mov qword [rbp + 0x2f0], rsi
lea rcx, [rbp + 0x2f0]
call fcn.1402e529c
nop
jmp 0x140079ce1
lea rcx, [rbp + 0x4b8]
call fcn.140082e60
test rax, rax
jne 0x140079b5e
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
cmp qword [rbp + rcx + 0x4f8], 0
cmovne ebx, r13d
or ebx, dword [rbp + rcx + 0x4c0]
and ebx, 0x17
mov dword [rbp + rcx + 0x4c0], ebx
mov eax, dword [rbp + rcx + 0x4c4]
and eax, ebx
jne 0x140079d0e
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x4b0], rax
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx + 0x4ac], edx
lea rcx, [rbp + 0x4b8]
call fcn.140081cd0
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x4b0], rax
mov rax, qword [rbp + 0x4b0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rbp + rcx + 0x4ac], edx
mov qword [rbp + 0x558], rsi
lea rcx, [rbp + 0x558]
call fcn.1402e529c
nop
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x23c], edx
lea rcx, [rbp + 0x250]
call fcn.140081cd0
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x23c], edx
mov qword [rbp + 0x2f0], rsi
lea rcx, [rbp + 0x2f0]
call fcn.1402e529c
nop
jmp 0x140079ce1
mov byte [r15 + 0x39], 1
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx + 0x240], rdi
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x23c], edx
lea rcx, [rbp + 0x250]
call fcn.140081cd0
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rcx, qword [rbp + 0x240]
movsxd rdx, dword [rcx + 4]
lea edi, [rdx - 0x18]
mov dword [rbp + rdx + 0x23c], edi
mov qword [rbp + 0x2f0], rsi
lea rcx, [rbp + 0x2f0]
call fcn.1402e529c
nop
mov rax, r15
mov rcx, qword [rbp + 0x618]
xor rcx, rsp
call fcn.14033b2f0
mov rbx, qword [rsp + 0x778]
add rsp, 0x720
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
test al, 4
je 0x140079d1b
lea rdi, str.ios_base::badbit_set
jmp 0x140079d2f
test al, 2
lea rdi, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rdi, rax
mov edx, 1
lea rcx, [rbp - 8]
call fcn.1400832a0
mov r8, rax
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.1400830f0
lea rdx, [0x1403bedb8]
lea rcx, [rbp - 0x60]
call fcn.14033d4d4
nop
mov edx, 1
lea rcx, [rbp - 8]
call fcn.1400832a0
mov r8, rax
lea rdx, str.ios_base::badbit_set
lea rcx, [rbp - 0x60]
call fcn.1400830f0
lea rdx, [0x1403bedb8]
lea rcx, [rbp - 0x60]
call fcn.14033d4d4
int3
test dl, 4
je 0x140079d9d
lea rdi, str.ios_base::badbit_set
jmp 0x140079db2
test r13b, dl
lea rdi, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rdi, rax
mov edx, 1
lea rcx, [rbp - 8]
call fcn.1400832a0
mov r8, rax
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.1400830f0
lea rdx, [0x1403bedb8]
lea rcx, [rbp - 0x60]
call fcn.14033d4d4
nop
call fcn.14007ede0
int3
call fcn.14007ede0
nop
call fcn.14007ede0
nop
call fcn.14007ede0
nop
call fcn.14007ede0
nop
call fcn.1403423e4
nop
call fcn.14007ede0
nop
call fcn.14007ede0
nop
call fcn.1403423e4
nop
call fcn.14007ede0
nop
call fcn.14007ede0
int3
call fcn.14007ede0
nop
call fcn.1403423e4
nop
test al, 4
je 0x140079e3b
lea rdi, str.ios_base::badbit_set
jmp 0x140079e4f
test al, 2
lea rdi, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rdi, rax
mov edx, 1
lea rcx, [rbp - 8]
call fcn.1400832a0
mov r8, rax
mov rdx, rdi
lea rcx, [rbp - 0x60]
call fcn.1400830f0
lea rdx, [0x1403bedb8]
lea rcx, [rbp - 0x60]
call fcn.14033d4d4
int3