Function at 0x1400766c0
Capabilities:
Parse credit card information

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x588
lea rbp, [rsp + 0x40]
mov rax, qword [rbp + 0x5b0]
mov r8, rcx
movaps xmmword [rbp + 0x530], xmm6
movabs r9, 0xffffffffffffff0
movaps xmmword [rbp + 0x520], xmm7
movaps xmmword [rbp + 0x510], xmm8
mov rcx, qword [rax]
mov rbx, qword [r8 + 8]
movsxd rax, edx
movaps xmmword [rbp + 0x500], xmm9
movaps xmmword [rbp + 0x4f0], xmm10
mov qword [rbp + 0x58], rcx
lea rdi, [rax + rax*4]
movsxd rax, dword [rbx + rdi*8 + 0x24]
shl rax, 3
lea rdx, [rax + 0xf]
cmp rdx, rax
ja 0x14007674c
mov rdx, r9
and rdx, 0xfffffffffffffff0
mov rax, rdx
call fcn.1400de970
sub rsp, rdx
xor r13d, r13d
cmp byte [r8], 1
lea rdx, [0x140100be0]
mov r14d, r13d
mov dword [rbp], r13d
mov qword [rbp + 0x40], rdx
mov r12, rdx
lea rax, [rsp + 0x40]
mov qword [rbp + 0x30], rdx
mov qword [rbp + 0x20], rax
jne 0x14007679a
mov r9, qword [rbx + 0x10]
mov qword [rbp + 0x70], r9
movabs r9, 0xffffffffffffff0
jmp 0x14007679e
mov qword [rbp + 0x70], r13
movsxd rax, dword [rbx + rdi*8 + 0x20]
shl rax, 3
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1400767b3
mov rcx, r9
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400de970
mov r9, qword [rbx + rdi*8 + 0x18]
sub rsp, rcx
mov esi, r13d
mov dword [rbp + 0x10], r13d
mov qword [rbp + 0x60], r13
mov qword [rbp + 0x18], r9
cmp dword [r9 + 0x10], 0x49
lea rax, [rsp + 0x40]
mov qword [rbp + 0x38], rax
je 0x140079162
mov r10d, dword [rbp + 0x4c]
mov r12, 0xffffffffffffffff
movsd xmm9, qword [0x14010feb0]
xorps xmm8, xmm8
movsd xmm10, qword [0x14010fd50]
mov dword [rbp + 4], r10d
mov eax, dword [rsp]
lea r11, [0x140000000]
mov dword [rbp + 0x28], esi
sub rsp, 0x20
lea r15, [rsp + 0x40]
mov eax, dword [r15]
mov qword [rbp + 8], r15
mov rdi, qword [r9]
mov qword [r15], rdi
mov rax, qword [r9 + 8]
mov qword [r15 + 8], rax
mov ecx, dword [r9 + 0x10]
mov dword [r15 + 0x10], ecx
cmp ecx, 8
jge 0x140076d4f
cmp ecx, 6
jne 0x140076aeb
test esi, esi
je case.default.0x140077b28
dec esi
movsxd rax, esi
mov dword [rbp + 0x10], esi
mov rsi, qword [rbp + 0x38]
mov r14, qword [rsi + rax*8]
mov ebx, dword [r14 + 0x10]
cmp ebx, 5
jne 0x14007687a
mov rax, r14
jmp 0x1400768a6
cmp ebx, 4
jne 0x14007690d
mov rax, qword [r14]
cmp byte [rax + 0x23], 0
jne 0x14007689c
mov rcx, qword [rax + 0x10]
call fcn.140005640
lea rdx, [0x140100be0]
test byte [rax + 0x21], 0x40
je 0x140076934
mov rdi, qword [rax]
test rdi, rdi
je 0x14007690d
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x48]
cmp rax, qword [0x14012c4b8]
jne 0x140078ac7
add rdi, 0x10
mov r8d, dword [r15 + 8]
mov rdx, rdi
mov rcx, qword [rbp + 0x590]
call fcn.140010890
test eax, eax
je 0x140079209
mov r14d, dword [rbp]
lea rdx, [0x140100be0]
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
mov r10d, dword [rbp + 4]
mov qword [r15], rdi
mov dword [r15 + 0x10], 4
jmp 0x140076af7
test ebx, ebx
je 0x140076a43
sub ebx, 1
je 0x140076a29
sub ebx, 1
je 0x1400769a9
cmp ebx, 2
je 0x140076934
mov rsi, rdx
jmp 0x140076a50
mov rbx, qword [r14]
cmp byte [rbx + 0x23], 0
jne 0x140076950
mov rcx, qword [rbx + 0x10]
mov edx, 1
call fcn.140007944
mov rsi, rax
jmp 0x14007697a
test byte [rbx + 0x21], 1
je 0x14007695e
mov rcx, rbx
call fcn.1400077b0
cmp byte [rbx + 0x23], 3
jne 0x140076976
cmp byte [rbx + 0x21], 0
jl 0x140076976
mov rcx, rbx
call fcn.1400a46e0
and byte [rbx + 0x21], 0x7f
mov rsi, qword [rbx + 8]
mov rbx, qword [r14]
cmp byte [rbx + 0x23], 0
jne 0x14007698f
mov rcx, qword [rbx + 0x10]
call fcn.140005640
mov rbx, rax
test byte [rbx + 0x21], 1
je 0x14007699d
mov rcx, rbx
call fcn.1400077b0
mov rbx, qword [rbx + 0x10]
shr rbx, 1
jmp 0x140076a5d
movsd xmm3, qword [r14]
lea r8, [0x14010f868]
movq r9, xmm3
lea rcx, [rbp + 0xf0]
mov edx, 0x100
call fcn.1400a1160
lea rdx, [0x14010f874]
movsxd rbx, eax
lea rcx, [rbp + 0xf0]
call fcn.1400d3d3c
cmp rax, rbx
jne 0x140076a1d
lea ecx, [rbx + 3]
cmp ecx, 0x100
jg 0x140076a1d
movzx eax, word [rbp + rbx*2 + 0xee]
sub ax, 0x30
cmp ax, 9
ja 0x140076a1d
mov dword [rbp + rbx*2 + 0xf0], 0x30002e
add ebx, 2
movsxd rax, ebx
mov word [rbp + rax*2 + 0xf0], r13w
movsxd rbx, ebx
lea rsi, [rbp + 0xf0]
jmp 0x140076a5d
mov rcx, qword [r14]
lea rdx, [rbp + 0xf0]
mov r8d, 0xa
call fcn.1400ca904
mov rsi, rax
jmp 0x140076a50
mov rbx, qword [r14 + 8]
mov rsi, qword [r14]
cmp rbx, 0xffffffffffffffff
jne 0x140076a5d
mov rbx, r12
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x140076a53
test rbx, rbx
je 0x140078b23
cmp dword [r15 + 8], 3
lea rcx, [0x14012c670]
mov r9d, 0x103
mov qword [rsp + 0x30], r13
mov r14d, 3
mov qword [rsp + 0x28], r13
cmovge r9d, r14d
mov qword [rsp + 0x20], r13
mov r8, rbx
mov rdx, rsi
call fcn.140058630
mov rdi, rax
test rax, rax
jne 0x1400768c8
mov eax, dword [r15 + 8]
cmp eax, 1
jne 0x140076acf
mov r9, qword [rbp + 0x18]
mov rsi, r15
mov r8, qword [rbp + 0x590]
add r9, 0x18
mov dword [r15 + 0x10], eax
mov qword [r15], r13
jmp 0x140077150
cmp eax, 2
jne 0x140078ad3
mov r8, qword [rbp + 0x590]
mov rsi, r15
mov dword [r15 + 0x10], r14d
jmp 0x14007714c
mov dword [rbp + 0x10], esi
cmp ecx, 4
jne 0x140078a3a
mov esi, dword [r15 + 8]
cmp esi, 3
jge 0x140078a3a
movzx ebx, byte [rdi + 0x23]
test bl, bl
jne 0x140076b17
mov rcx, qword [rdi + 0x10]
call fcn.140005640
jmp 0x140076b1a
mov rax, rdi
cmp byte [rax + 0x23], 3
jne 0x140076cbe
test esi, 0xfffffffd
jne 0x140076cbe
mov qword [rbp + 0xc0], r12
lea r10, [0x140100be0]
mov qword [rbp + 0xb8], r10
lea rax, [rbp + 0x2f0]
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], r13
mov dword [rbp + 0xe8], 1
mov dword [rbp + 0xc8], 1
test bl, bl
jne 0x140076b84
mov rcx, qword [rdi + 0x10]
lea rdx, [rbp + 0xb8]
call fcn.1400a5800
jmp 0x140076b94
mov rax, qword [rdi]
lea rcx, [rbp + 0xb8]
mov rdx, qword [rdi + 0x28]
call qword [rax]
mov eax, dword [rbp + 0xe8]
test eax, 0xfffffff7
je 0x140076d03
mov ecx, dword [rbp + 0xc8]
mov rbx, qword [rbp + 0xc0]
test ecx, ecx
jne 0x140076cab
test rbx, rbx
je 0x140076cab
mov r9, qword [rbp + 0xb8]
cmp rbx, 0xffffffffffffffff
jne 0x140076bde
mov rbx, r12
inc rbx
cmp word [r9 + rbx*2], 0
jne 0x140076bd3
lea rax, [rbp + 0x2f0]
cmp r9, rax
je 0x140076c2a
cmp qword [rbp + 0xd8], 0
je 0x140076c06
mov rcx, qword [rbp + 0x20]
movsxd rax, r14d
inc r14d
mov dword [rbp], r14d
mov qword [rcx + rax*8], r15
mov qword [r15], r9
mov dword [r15 + 0x10], r13d
mov esi, dword [rbp + 0x10]
mov dword [rbp + 0x10], esi
mov qword [r15 + 8], rbx
mov r9, qword [rbp + 0x18]
mov rsi, r15
mov r8, qword [rbp + 0x590]
jmp 0x140077154
mov rax, qword [rbp + 0x5b8]
lea rdx, [rbx + 1]
mov r8, qword [rbp + 0x58]
mov rcx, r8
sub rcx, qword [rax]
mov rax, qword [rbp + 0x5c0]
sar rcx, 1
mov eax, dword [rax]
sub eax, ecx
cdqe
cmp rdx, rax
ja 0x140076c61
mov rdi, r8
lea r8, [r8 + rdx*2]
mov qword [rbp + 0x58], r8
jmp 0x140076c90
lea rax, [rdx + rdx]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140076c78
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400de970
sub rsp, rcx
add qword [rbp + 0x60], rdx
lea rdi, [rsp + 0x40]
lea r8, [rbx*2 + 2]
mov rdx, r9
mov rcx, rdi
call fcn.1400e2370
mov qword [r15], rdi
jmp 0x140076c09
mov rax, qword [rbp + 0xb8]
mov qword [r15], rax
mov dword [r15 + 0x10], ecx
jmp 0x140076c0d
test bl, bl
jne 0x140076ccd
mov rcx, qword [rdi + 0x10]
call fcn.140005640
jmp 0x140076cd0
mov rax, rdi
test byte [rax + 0x21], 2
je 0x140076c17
test bl, bl
jne 0x140076ce9
mov rcx, qword [rdi + 0x10]
call fcn.140005640
jmp 0x140076cec
mov rax, rdi
cmp byte [rax + 0x23], 2
jne 0x140076d18
mov rcx, rdi
call fcn.1400a5fa0
cmp eax, 1
je 0x140076c17
mov rdx, qword [rbp + 0x5a0]
mov r15, r13
mov qword [rbp + 0x40], r13
mov dword [rdx], eax
jmp 0x140078e40
test esi, esi
je 0x140078b61
mov r9, qword [rbp + 0x18]
lea rdx, [0x140100be0]
mov r8, qword [rbp + 0x590]
cmp esi, 2
mov r10d, dword [rbp + 4]
mov rsi, r15
jne 0x14007715f
mov dword [r15 + 0x10], 3
jmp 0x14007715f
cmp ecx, 0x46
jne 0x140077563
mov r14d, dword [rdi + 0x14]
mov r15, qword [rdi]
mov r12, qword [rdi + 8]
mov r13d, dword [rdi + 0x10]
mov dword [rbp + 0x28], r14d
cmp r14d, esi
jg case.default.0x140077b28
mov ebx, dword [rbp + 0x10]
mov rdi, qword [rbp + 0x38]
sub ebx, r14d
movsxd rax, ebx
mov dword [rbp + 0x10], ebx
lea rax, [rdi + rax*8]
mov qword [rbp + 0x50], rax
bt r13d, 0x11
jae 0x140076f14
test ebx, ebx
je case.default.0x140077b28
dec ebx
btr r13d, 0x11
movsxd rax, ebx
mov dword [rbp + 0x10], ebx
mov r9, qword [rdi + rax*8]
mov ecx, dword [r9 + 0x10]
cmp ecx, 3
je 0x140076f14
test ecx, ecx
je 0x140076ec9
sub ecx, 1
je 0x140076eaf
sub ecx, 1
je 0x140076e34
cmp ecx, 2
je 0x140076de0
mov r12, rdx
jmp 0x140076ecc
mov rbx, qword [r9]
cmp byte [rbx + 0x23], 0
jne 0x140076e02
mov rcx, qword [rbx + 0x10]
mov edx, 1
call fcn.140007944
mov ebx, dword [rbp + 0x10]
mov r12, rax
jmp 0x140076ecc
test byte [rbx + 0x21], 1
je 0x140076e10
mov rcx, rbx
call fcn.1400077b0
cmp byte [rbx + 0x23], 3
jne 0x140076e28
cmp byte [rbx + 0x21], 0
jl 0x140076e28
mov rcx, rbx
call fcn.1400a46e0
and byte [rbx + 0x21], 0x7f
mov r12, qword [rbx + 8]
mov ebx, dword [rbp + 0x10]
jmp 0x140076ecc
movsd xmm3, qword [r9]
lea r8, [0x14010f868]
movq r9, xmm3
lea rcx, [rbp + 0xf0]
mov edx, 0x100
call fcn.1400a1160
lea rdx, [0x14010f874]
movsxd rdi, eax
lea rcx, [rbp + 0xf0]
call fcn.1400d3d3c
cmp rax, rdi
jne 0x140076ea2
lea eax, [rdi + 3]
cmp eax, 0x100
jg 0x140076ea2
movzx eax, word [rbp + rdi*2 + 0xee]
sub ax, 0x30
cmp ax, 9
ja 0x140076ea2
xor ecx, ecx
mov dword [rbp + rdi*2 + 0xf0], 0x30002e
mov word [rbp + rdi*2 + 0xf4], cx
mov rdi, qword [rbp + 0x38]
lea r12, [rbp + 0xf0]
jmp 0x140076ecc
mov rcx, qword [r9]
lea rdx, [rbp + 0xf0]
mov r8d, 0xa
call fcn.1400ca904
mov r12, rax
jmp 0x140076ecc
mov r12, qword [r9]
cmp word [r12], 0
jne 0x140076f14
movsxd rax, ebx
mov r14, qword [rdi + rax*8]
mov eax, dword [r14 + 0x10]
cmp eax, 5
jne 0x140076ee9
mov rax, r14
jmp 0x140076f06
cmp eax, 4
jne 0x140076f10
mov rax, qword [r14]
cmp byte [rax + 0x23], 0
jne 0x140076f00
mov rcx, qword [rax + 0x10]
call fcn.140005640
test byte [rax + 0x21], 0x40
je 0x140076f10
cmp qword [rax], 0
jne 0x140078c82
mov r14d, dword [rbp + 0x28]
test r15, r15
je 0x140076f36
mov eax, dword [rsp]
sub rsp, 0x20
lea rdi, [rsp + 0x40]
mov eax, dword [rdi]
mov dword [rdi + 0x10], 5
mov qword [rdi], r15
jmp 0x140077007
test ebx, ebx
je case.default.0x140077b28
dec ebx
movsxd rax, ebx
mov dword [rbp + 0x10], ebx
mov rdi, qword [rdi + rax*8]
mov ebx, dword [rdi + 0x10]
cmp ebx, 5
jne 0x140076f57
mov rax, rdi
jmp 0x140076f74
cmp ebx, 4
jne 0x140076f80
mov rax, qword [rdi]
cmp byte [rax + 0x23], 0
jne 0x140076f6e
mov rcx, qword [rax + 0x10]
call fcn.140005640
test byte [rax + 0x21], 0x40
je 0x140076fc6
mov r15, qword [rax]
test r15, r15
jne 0x140077007
cmp ebx, 7
jne 0x140076fc6
mov rax, qword [0x1401241d8]
mov rcx, qword [rax + 0x28]
mov rcx, qword [rcx + 0x50]
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [0x1401241d8]
or r13d, 0x40
mov r15, rax
mov rdx, qword [rcx + 0x28]
mov rcx, qword [rdx + 0x48]
mov rdx, qword [rcx]
mov qword [rdi], rdx
mov dword [rdi + 0x10], 4
mov dword [rdi + 8], 0
jmp 0x140076ffe
mov rcx, rdi
call fcn.14006c4d0
test eax, eax
je 0x140076ff3
sub eax, 1
je 0x140076fea
cmp eax, 1
je 0x140076fe1
xor r15d, r15d
jmp 0x140076ffa
mov r15, qword [0x14012c590]
jmp 0x140076ffa
mov r15, qword [0x14012c588]
jmp 0x140076ffa
mov r15, qword [0x14012c580]
or r13d, 0x20
test r15, r15
je case.default.0x140077b28
mov eax, dword [rbp + 0x10]
lea r10, [0x140100be0]
bt r13d, 0x12
mov qword [rbp + 0x80], r10
lea rcx, [rbp + 0x2f0]
mov qword [rbp + 0x88], 0xffffffffffffffff
cmovb eax, esi
mov qword [rbp + 0x98], rcx
mov dword [rbp + 0x10], eax
xor eax, eax
mov dword [rbp + 0x90], eax
mov qword [rbp + 0xa0], rax
mov dword [rbp + 0xb0], 1
mov esi, dword [rdi + 0x10]
cmp esi, 4
jne 0x140077066
mov rax, qword [r15]
mov rcx, r15
call qword [rax + reloc.WSOCK32.dll_htonl]
mov dword [rsp + 0x30], r14d
mov r9, r12
lea rdx, [rbp + 0x80]
mov r8d, r13d
bt r13d, 0x10
jae 0x140077097
mov rax, qword [rbp + 0x50]
mov rcx, r15
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
call fcn.140079600
jmp 0x1400770ae
mov rcx, qword [rbp + 0x50]
mov rax, qword [r15]
mov qword [rsp + 0x28], rcx
mov rcx, r15
mov qword [rsp + 0x20], rdi
call qword [rax + reloc.WSOCK32.dll_getservbyport]
mov ebx, eax
cmp esi, 4
jne 0x1400770be
mov rax, qword [r15]
mov rcx, r15
call qword [rax + reloc.WSOCK32.dll_recv]
test ebx, ebx
je 0x140078bd5
cmp ebx, 4
je 0x140078bb5
cmp ebx, 8
je 0x140078bd5
mov r8, qword [rbp + 0x590]
mov qword [0x14012cd28], r8
test r13b, 1
je 0x140077178
cmp dword [rbp + 0x90], 5
jne 0x140077106
mov rcx, qword [rbp + 0x80]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_recv]
mov rcx, qword [rbp + 0xa0]
test rcx, rcx
je 0x140077117
call fcn.1400c5338
mov rsi, qword [rbp + 8]
mov rcx, qword [rbp + 0x50]
mov r8, qword [rbp + 0x590]
movsxd rax, r14d
mov rcx, qword [rcx + rax*8 - 8]
mov rax, qword [rcx]
mov qword [rsi], rax
mov rax, qword [rcx + 8]
mov qword [rsi + 8], rax
mov eax, dword [rcx + 0x10]
mov dword [rsi + 0x10], eax
xor r13d, r13d
mov r12, 0xffffffffffffffff
mov r9, qword [rbp + 0x18]
mov r14d, dword [rbp]
lea rdx, [0x140100be0]
mov r10d, dword [rbp + 4]
movsxd rax, dword [rbp + 0x10]
mov rcx, qword [rbp + 0x38]
mov qword [rcx + rax*8], rsi
mov esi, dword [rbp + 0x10]
inc esi
mov dword [rbp + 0x10], esi
jmp 0x140078a6b
mov ecx, dword [rbp + 0x90]
test ecx, ecx
je 0x1400771b8
mov rsi, qword [rbp + 8]
mov rax, qword [rbp + 0x80]
mov qword [rsi], rax
mov dword [rsi + 0x10], ecx
cmp ecx, 5
jne 0x140077142
movsxd r14, dword [rbp]
mov rcx, qword [rbp + 0x20]
mov r9, qword [rbp + 0x18]
mov qword [rcx + r14*8], rsi
inc r14d
xor r13d, r13d
mov dword [rbp], r14d
lea r12, [r13 - 1]
jmp 0x140077154
movsxd rax, dword [rbp + 0x10]
mov r9, qword [rbp + 0x18]
test eax, eax
jne 0x1400771e2
cmp dword [r9 + 0x28], 0x49
jne 0x1400771e2
cmp byte [r8], 2
je 0x140078b80
mov rdi, qword [rbp + 0x70]
lea r15d, [rax + 1]
xor r13d, r13d
jmp 0x140077226
xor r13d, r13d
cmp dword [r9 + 0x28], 0x13
mov r15d, r13d
jne 0x140077223
test eax, eax
je 0x140077223
mov rsi, qword [rbp + 0x38]
mov rdi, qword [rsi + rax*8 - 8]
cmp dword [rdi + 0x10], 4
jne 0x140077223
mov rdi, qword [rdi]
cmp byte [rdi + 0x23], r13b
jne 0x14007721a
mov rcx, qword [rdi + 0x10]
call fcn.140005640
mov r9, qword [rbp + 0x18]
jmp 0x14007721d
mov rax, rdi
cmp byte [rax + 0x23], 1
je 0x140077226
mov rdi, r13
mov r8, qword [rbp + 0x88]
mov r12, 0xffffffffffffffff
mov r14, qword [rbp + 0x80]
mov rbx, r8
cmp r8, r12
jne 0x14007725b
mov rbx, r12
nop word [rax + rax]
inc rbx
cmp word [r14 + rbx*2], 0
jne 0x140077250
test rdi, rdi
je 0x14007736f
mov rsi, qword [rbp + 0xa0]
test rsi, rsi
je 0x1400772af
movzx eax, byte [rdi + 0x23]
mov rdx, rsi
test al, al
jne 0x140077289
mov rcx, qword [rdi + 0x10]
call fcn.1400a5a90
jmp 0x14007733a
mov rcx, rdi
cmp al, 1
je 0x1400772a5
xor r9d, r9d
call fcn.1400a5210
mov rcx, rsi
call fcn.1400c5338
jmp 0x14007733a
call fcn.1400a5ad0
jmp 0x14007733a
cmp r14, qword [0x14012c2f0]
jne 0x140077321
cmp rbx, 0x40
jb 0x140077321
movzx eax, byte [rdi + 0x23]
mov r8, rbx
mov rdx, r14
test al, al
jne 0x1400772e5
mov rcx, qword [rdi + 0x10]
call fcn.1400a5a90
mov qword [0x14012c2f0], r13
mov qword [0x14012c2e8], r13
jmp 0x14007733a
mov rcx, rdi
cmp al, 1
je 0x14007730c
xor r9d, r9d
call fcn.1400a5210
mov rcx, r14
call fcn.1400c5338
mov qword [0x14012c2f0], r13
mov qword [0x14012c2e8], r13
jmp 0x14007733a
call fcn.1400a5ad0
mov qword [0x14012c2f0], r13
mov qword [0x14012c2e8], r13
jmp 0x14007733a
xor r9d, r9d
mov r8, rbx
mov rdx, r14
mov rcx, rdi
call fcn.1400a5210
test eax, eax
je 0x140079209
test r15d, r15d
jne 0x140078e39
mov rax, qword [rbp + 8]
dec dword [rbp + 0x10]
mov rsi, rax
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
add r9, 0x18
mov dword [rax + 0x10], 4
mov qword [rax], rdi
mov dword [rax + 8], r13d
jmp 0x140077150
cmp qword [rbp + 0xa0], 0
mov rax, qword [rbp + 8]
mov dword [rax + 0x10], r13d
mov qword [rax + 8], rbx
je 0x1400773c1
test r15d, r15d
je 0x14007739a
mov rax, qword [rbp + 0x5a8]
test rax, rax
jne 0x140078b9a
movsxd rcx, dword [rbp]
mov rsi, qword [rbp + 8]
mov rdx, qword [rbp + 0x20]
mov r8, qword [rbp + 0x590]
mov qword [rdx + rcx*8], rsi
inc ecx
mov qword [rsi], r14
mov r14d, ecx
mov dword [rbp], ecx
jmp 0x140077154
test rbx, rbx
jne 0x1400773e3
mov r14d, dword [rbp]
lea rdx, [0x140100be0]
mov r8, qword [rbp + 0x590]
mov rsi, rax
mov qword [rax], rdx
jmp 0x14007715b
cmp r14, qword [0x14012c2f0]
je 0x140077459
xor r15b, 1
je 0x140077485
mov rax, qword [rbp + 0x5b8]
lea rdi, [rbx + 1]
mov r15, qword [rbp + 0x58]
mov rcx, r15
sub rcx, qword [rax]
mov rax, qword [rbp + 0x5c0]
sar rcx, 1
mov rax, qword [rax]
sub rax, rcx
cmp rdi, rax
ja 0x140077498
add rbx, rbx
mov rdx, r14
mov r8, rbx
mov rcx, r15
call fcn.1400e2370
mov rsi, qword [rbp + 8]
lea r15, [r15 + rdi*2]
mov r14d, dword [rbp]
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
mov qword [rsi], rax
mov word [rbx + rax], r13w
mov qword [rbp + 0x58], r15
jmp 0x140077154
test r15d, r15d
jne 0x140077485
mov eax, dword [r9 + 0x28]
lea rcx, [r9 + 0x28]
cmp eax, 0x49
je 0x140077481
nop dword [rax + rax]
cmp eax, 0x46
je 0x1400773f6
mov eax, dword [rcx + 0x18]
add rcx, 0x18
cmp eax, 0x49
jne 0x140077470
mov rax, qword [rbp + 8]
mov rsi, qword [rbp + 8]
mov r8, qword [rbp + 0x590]
mov qword [rax], r14
jmp 0x140077150
cmp rdi, 0x1001
jae 0x14007750e
mov r15, qword [rbp + 0x60]
cmp r15, 0x9c40
jae 0x14007750e
lea rax, [rdi + rdi]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x1400774c5
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400de970
sub rsp, rcx
add rbx, rbx
mov r8, rbx
mov rdx, r14
lea rcx, [rsp + 0x40]
call fcn.1400e2370
mov rsi, qword [rbp + 8]
add r15, rdi
mov r14d, dword [rbp]
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
mov qword [rsi], rax
mov word [rbx + rax], r13w
mov qword [rbp + 0x60], r15
jmp 0x140077154
lea rcx, [rdi + rdi]
call fcn.1400c534c
mov rsi, qword [rbp + 8]
mov qword [rsi], rax
test rax, rax
je 0x140078fe4
add rbx, rbx
mov rdx, r14
mov r8, rbx
mov rcx, rax
call fcn.1400e2370
movsxd r14, dword [rbp]
mov rcx, qword [rbp + 0x20]
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
mov qword [rcx + r14*8], rsi
inc r14d
mov rax, qword [rsi]
mov dword [rbp], r14d
mov word [rbx + rax], r13w
jmp 0x140077154
cmp ecx, 0x20
jne 0x140077574
mov rcx, qword [rbp + 0x38]
mov r9, rdi
jmp 0x140078a6b
test esi, esi
je case.default.0x140077b28
mov r8, qword [rbp + 0x38]
dec esi
movsxd rax, esi
mov dword [rbp + 0x10], esi
mov r14, qword [r8 + rax*8]
cmp dword [r14 + 0x10], 3
jne 0x1400775aa
cmp ecx, 0x22
je case.0x1400775c9.18
cmp ecx, 0x13
jne case.default.0x140077b28
add ecx, 0xffffffee
jmp 0x1400775b2
add ecx, 0xffffffee
cmp ecx, 0x2f
ja case.0x1400775c9.21
movsxd rax, ecx
movzx eax, byte [r11 + rax + 0x79288]
mov ecx, dword [r11 + rax*4 + 0x79278]
add rcx, r11
jmp rcx
mov r10d, r13d
mov dword [rbp + 4], r13d
mov dword [rbp + 0x4c], r13d
mov dword [rbp + 0x68], r13d
jmp case.0x1400775c9.20
lea rdx, [rbp + 0x4c]
mov rcx, r14
call fcn.14006b690
mov r10d, dword [rbp + 0x4c]
lea rdx, [0x140100be0]
mov r9, qword [rbp + 0x18]
lea r11, [0x140000000]
mov r8, qword [rbp + 0x38]
mov dword [rbp + 4], r10d
mov dword [rbp + 0x68], eax
mov ebx, dword [r15 + 0x10]
mov qword [rbp + 0x50], r13
lea ecx, [rbx - 9]
cmp ecx, 0x3c
ja case.0x140077634.17
movsxd rcx, ecx
movzx ecx, byte [r11 + rcx + 0x792dc]
mov eax, dword [r11 + rcx*4 + 0x792b8]
add rax, r11
jmp rax
mov edx, dword [r14 + 0x10]
mov ecx, edx
test edx, edx
je 0x1400776e6
sub ecx, 1
je 0x1400776da
sub ecx, 1
je 0x14007766e
cmp ecx, 2
je 0x140077662
cmp edx, 5
mov ecx, r13d
sete cl
jmp 0x140077685
mov rcx, qword [r14]
call fcn.14006b4f0
mov ecx, eax
jmp 0x140077685
movsd xmm0, qword [r14]
ucomisd xmm0, xmm8
jp 0x140077680
je 0x140077706
mov ecx, 1
mov ebx, dword [r15 + 0x10]
mov eax, r13d
cmp ebx, 0x23
sete al
cmp ecx, eax
jne 0x140078a42
mov r9, qword [r15]
lea rdx, [0x140100be0]
mov r8, qword [rbp + 0x590]
mov r10d, dword [rbp + 4]
cmp ebx, 0x21
je 0x140078a57
mov rax, qword [r14]
mov rsi, r15
mov qword [r15], rax
mov rax, qword [r14 + 8]
mov qword [r15 + 8], rax
mov eax, dword [r14 + 0x10]
mov r14d, dword [rbp]
mov dword [r15 + 0x10], eax
jmp 0x14007715f
cmp qword [r14], 0
mov ecx, r13d
setne cl
jmp 0x140077685
mov rcx, qword [r14]
call fcn.14006b450
test eax, eax
jne 0x140077680
cmp qword [r14 + 8], 0
je 0x140077706
mov rax, qword [r14]
cmp word [rax], 0
je 0x140077680
mov ecx, r13d
jmp 0x140077685
mov edx, dword [r14 + 0x10]
mov ecx, edx
test edx, edx
je 0x14007777f
sub ecx, 1
je 0x140077773
sub ecx, 1
je 0x14007773e
cmp ecx, 2
je 0x140077732
cmp edx, 5
mov ecx, r13d
sete cl
jmp 0x140077751
mov rcx, qword [r14]
call fcn.14006b4f0
mov ecx, eax
jmp 0x140077751
movsd xmm0, qword [r14]
ucomisd xmm0, xmm8
jp 0x14007774c
je 0x14007779b
mov ecx, 1
mov r8, qword [rbp + 0x590]
mov rax, r13
test ecx, ecx
mov dword [r15 + 0x10], 1
mov rsi, r15
sete al
mov qword [r15], rax
jmp 0x14007714c
cmp qword [r14], 0
mov ecx, r13d
setne cl
jmp 0x140077751
mov rcx, qword [r14]
call fcn.14006b450
test eax, eax
jne 0x14007774c
cmp qword [r14 + 8], 0
je 0x14007779b
mov rax, qword [r14]
cmp word [rax], 0
je 0x14007774c
mov ecx, r13d
jmp 0x140077751
cmp r10d, 1
jne 0x14007780e
mov ecx, dword [r14 + 0x10]
test ecx, ecx
je 0x1400777fa
sub ecx, r10d
je 0x1400777ef
sub ecx, r10d
je 0x1400777e2
cmp ecx, 2
je 0x1400777cb
mov rax, r13
neg rax
mov qword [r15], rax
jmp 0x140077865
mov rcx, qword [r14]
call fcn.140064cf0
mov r10d, dword [rbp + 4]
neg rax
mov qword [r15], rax
jmp 0x140077865
cvttsd2si rax, qword [r14]
neg rax
mov qword [r15], rax
jmp 0x140077865
mov rax, qword [r14]
neg rax
mov qword [r15], rax
jmp 0x140077865
mov rcx, qword [r14]
call fcn.1400a19d0
mov r10d, dword [rbp + 4]
neg rax
mov qword [r15], rax
jmp 0x140077865
cmp r10d, 2
jne 0x140078bea
mov ecx, dword [r14 + 0x10]
test ecx, ecx
je 0x140077850
sub ecx, 1
je 0x140077846
sub ecx, 1
je 0x14007783f
cmp ecx, r10d
je 0x140077835
movaps xmm0, xmm8
jmp 0x14007785c
mov rcx, qword [r14]
call fcn.140064d90
jmp 0x140077858
movsd xmm0, qword [r14]
jmp 0x14007785c
xorps xmm0, xmm0
cvtsi2sd xmm0, qword [r14]
jmp 0x14007785c
mov rcx, qword [r14]
call fcn.1400d0c04
mov r10d, dword [rbp + 4]
xorps xmm0, xmm9
movsd qword [r15], xmm0
mov dword [r15 + 0x10], r10d
mov r14d, dword [rbp]
lea rdx, [0x140100be0]
mov r9, qword [rbp + 0x18]
mov rsi, r15
mov r8, qword [rbp + 0x590]
jmp 0x14007715f
test r10d, r10d
je 0x140078bea
mov rdx, r15
mov rcx, r14
call fcn.14006bb30
mov r8, qword [rbp + 0x590]
mov rsi, r15
jmp 0x14007714c
cmp dword [r14 + 0x10], 4
jne case.default.0x140077b28
mov eax, dword [r15 + 8]
test eax, eax
je 0x14007793c
cmp eax, 3
je 0x1400778eb
mov rax, qword [r14]
mov rsi, r15
mov r14d, dword [rbp]
mov r8, qword [rbp + 0x590]
mov qword [r15], rax
mov dword [r15 + 0x10], 4
mov dword [r15 + 8], 3
jmp 0x14007715f
mov rbx, qword [r14]
cmp byte [rbx + 0x23], 0
jne 0x1400778ff
mov rcx, qword [rbx + 0x10]
call fcn.140005640
jmp 0x140077902
mov rax, rbx
movzx eax, byte [rax + 0x22]
and al, 0x22
cmp al, 2
jne 0x14007791a
mov rax, qword [r15]
test rax, rax
je 0x14007791a
cmp dword [rax + 0x38], 0
jne 0x14007793c
mov r8, qword [rbp + 0x590]
mov rsi, r15
mov dword [r15 + 0x10], 4
mov qword [r15], rbx
mov dword [r15 + 8], 3
jmp 0x14007714c
mov rcx, qword [r14]
call fcn.1400a47f0
mov dword [r15 + 0x10], 5
mov qword [r15], rax
test rax, rax
je 0x140078fe4
movsxd r14, dword [rbp]
mov rsi, r15
mov rcx, qword [rbp + 0x20]
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
mov qword [rcx + r14*8], r15
inc r14d
mov dword [rbp], r14d
jmp 0x140077154
cmp dword [r14 + 0x10], 4
jne case.default.0x140077b28
test r10d, r10d
je 0x140078bea
cmp ebx, 9
je 0x14007799f
mov edi, r12d
cmp ebx, 0x44
jne 0x1400779a4
mov edi, 1
mov rcx, qword [r14]
cmp r10d, 1
jne 0x1400779d0
call fcn.140064cf0
mov qword [r15], rax
mov r8b, reloc.OLEAUT32.dll_SafeArrayGetElemsize
mov rcx, qword [r14]
movsxd rdx, edi
add rdx, rax
call fcn.1400a55f0
movd xmm6, edi
cvtdq2pd xmm6, xmm6
jmp 0x1400779f6
call fcn.140064d90
movsd qword [r15], xmm0
mov r8b, SafeArrayAllocDescriptor
mov rcx, qword [r14]
movd xmm6, edi
cvtdq2pd xmm6, xmm6
addsd xmm0, xmm6
movq rdx, xmm0
call fcn.1400a55f0
cmp ebx, 0x44
jl 0x140077a50
mov rbx, qword [r14]
cmp byte [rbx + 0x23], 0
jne 0x140077a0f
mov rcx, qword [rbx + 0x10]
call fcn.140005640
jmp 0x140077a12
mov rax, rbx
cmp byte [rax + 0x23], 1
mov r10d, dword [rbp + 4]
jne 0x140077a30
mov dword [r15 + 0x10], 4
mov qword [r15], rbx
mov dword [r15 + 8], r13d
jmp 0x140077869
cmp r10d, 1
jne 0x140077a41
movsxd rax, edi
add qword [r15], rax
jmp 0x140077865
addsd xmm6, qword [r15]
movsd qword [r15], xmm6
jmp 0x140077865
mov r10d, dword [rbp + 4]
jmp 0x140077865
cmp r10d, 1
jne 0x140078bea
mov ecx, dword [r14 + 0x10]
test ecx, ecx
je 0x140077ac4
sub ecx, r10d
je 0x140077aae
sub ecx, r10d
je 0x140077a96
cmp ecx, 2
je 0x140077a8c
mov rax, r13
mov dword [r15 + 0x10], r10d
not rax
mov qword [r15], rax
jmp 0x140077869
mov rcx, qword [r14]
call fcn.140064cf0
jmp 0x140077acc
cvttsd2si rax, qword [r14]
mov dword [r15 + 0x10], 1
not rax
mov qword [r15], rax
jmp 0x140077869
mov rax, qword [r14]
not rax
mov dword [r15 + 0x10], 1
mov qword [r15], rax
jmp 0x140077869
mov rcx, qword [r14]
call fcn.1400a19d0
mov r10d, dword [rbp + 4]
not rax
mov qword [r15], rax
mov dword [r15 + 0x10], 1
jmp 0x140077869
test esi, esi
je case.default.0x140077b28
dec esi
movsxd rax, esi
mov dword [rbp + 0x10], esi
mov r12, qword [r8 + rax*8]
mov eax, dword [r12 + 0x10]
cmp eax, 3
je case.default.0x140077b28
add ebx, 0xffffffed
cmp ebx, 0xc
ja 0x140077c1e
cmp eax, 4
jne case.default.0x140077b28
movsxd rax, ebx
mov ecx, dword [r11 + rax*4 + 0x7931c]
add rcx, r11
jmp rcx
mov rcx, qword [r12]
mov rdx, r14
call fcn.1400a43b0
test eax, eax
je 0x140079209
mov rbx, qword [r12]
cmp byte [rbx + 0x23], 0
jne 0x140077b53
mov rcx, qword [rbx + 0x10]
call fcn.140005640
jmp 0x140077b56
mov rax, rbx
cmp byte [rax + 0x23], 1
je 0x140077b81
mov rax, qword [r14]
mov rsi, r15
mov qword [r15], rax
mov rax, qword [r14 + 8]
mov qword [r15 + 8], rax
mov eax, dword [r14 + 0x10]
mov dword [r15 + 0x10], eax
mov r8, qword [rbp + 0x590]
jmp 0x140077145
mov eax, 4
mov qword [r15], rbx
mov dword [r15 + 8], r13d
mov rsi, r15
mov dword [r15 + 0x10], eax
mov r8, qword [rbp + 0x590]
jmp 0x140077145
mov dword [r15 + 0x10], reloc.WSOCK32.dll_getservbyport
jmp 0x140077c16
mov dword [r15 + 0x10], reloc.WSOCK32.dll_gethostname
jmp 0x140077c16
mov dword [r15 + 0x10], 0x3a
jmp 0x140077c16
mov dword [r15 + 0x10], 0x3b
jmp 0x140077c16
mov rcx, qword [r12]
mov qword [rbp + 0x50], rcx
test r10d, r10d
je 0x1400780b0
lea rdx, [rbp + 0x78]
mov rcx, r12
call fcn.14006b690
mov edi, dword [rbp + 0x78]
test edi, edi
je 0x1400780b0
mov edx, dword [r15 + 0x10]
lea ecx, [rdx - 0x26]
cmp ecx, 3
ja 0x140077c58
cmp dword [rbp + 0x68], 0
jne 0x140077c58
test eax, eax
je 0x1400780b0
cmp dword [rbp + 4], 1
jne 0x140077e72
cmp edi, 1
jne 0x140077e72
cmp edx, 0x3b
je 0x140077e72
mov ecx, dword [r14 + 0x10]
test ecx, ecx
je 0x140077ca4
sub ecx, edi
je 0x140077c9f
sub ecx, edi
je 0x140077c98
cmp ecx, 2
je 0x140077c8e
mov rbx, r13
jmp 0x140077caf
mov rcx, qword [r14]
call fcn.140064cf0
jmp 0x140077cac
cvttsd2si rbx, qword [r14]
jmp 0x140077caf
mov rbx, qword [r14]
jmp 0x140077caf
mov rcx, qword [r14]
call fcn.1400a19d0
mov rbx, rax
mov ecx, dword [r12 + 0x10]
test ecx, ecx
je 0x140077ce5
sub ecx, 1
je 0x140077cdf
sub ecx, 1
je 0x140077cd7
cmp ecx, 2
je 0x140077ccc
mov rdx, r13
jmp 0x140077cf1
mov rcx, qword [r12]
call fcn.140064cf0
jmp 0x140077cee
cvttsd2si rdx, qword [r12]
jmp 0x140077cf1
mov rdx, qword [r12]
jmp 0x140077cf1
mov rcx, qword [r12]
call fcn.1400a19d0
mov rdx, rax
mov r8d, dword [r15 + 0x10]
mov esi, 1
lea eax, [r8 - 0x26]
cmp eax, 0x16
ja case.0x140077d1b.46
lea r9, [0x140000000]
cdqe
mov ecx, dword [r9 + rax*4 + 0x79350]
add rcx, r9
jmp rcx
lea rax, [rdx + rbx]
jmp 0x14007896b
sub rdx, rbx
mov qword [r15], rdx
jmp case.0x140077d1b.46
imul rdx, rbx
mov qword [r15], rdx
jmp case.0x140077d1b.46
cmp rdx, rbx
mov rax, r13
sete al
jmp 0x14007896b
cmp rdx, rbx
mov rax, r13
setne al
jmp 0x14007896b
cmp rdx, rbx
mov rax, r13
setg al
jmp 0x14007896b
cmp rdx, rbx
mov rax, r13
setl al
jmp 0x14007896b
cmp rdx, rbx
mov rax, r13
setge al
jmp 0x14007896b
cmp rdx, rbx
mov rax, r13
setle al
jmp 0x14007896b
and rdx, rbx
mov qword [r15], rdx
jmp case.0x140077d1b.46
or rdx, rbx
mov qword [r15], rdx
jmp case.0x140077d1b.46
xor rdx, rbx
mov qword [r15], rdx
jmp case.0x140077d1b.46
cmp rbx, 0x3f
ja case.default.0x140077b28
mov rcx, rbx
cmp r8d, 0x36
jne 0x140077dd0
shr rdx, cl
mov qword [r15], rdx
jmp case.0x140077d1b.46
cmp r8d, 0x34
jne 0x140077de1
shl rdx, cl
mov qword [r15], rdx
jmp case.0x140077d1b.46
sar rdx, cl
mov qword [r15], rdx
jmp case.0x140077d1b.46
test rbx, rbx
je 0x140078bf6
mov rax, rdx
cqo
idiv rbx
jmp 0x14007896b
test rdx, rdx
jne 0x140077e16
test rbx, rbx
js 0x140078bf6
je case.default.0x140077b28
test rbx, rbx
js 0x140077e4e
mov rax, rsi
je 0x14007896b
cmp rbx, rsi
jle 0x140077e45
nop dword [rax]
test sil, bl
je 0x140077e39
imul rax, rdx
imul rdx, rdx
shr rbx, 1
cmp rbx, rsi
ja 0x140077e30
imul rax, rdx
jmp 0x14007896b
xorps xmm0, xmm0
xorps xmm1, xmm1
cvtsi2sd xmm0, rdx
mov esi, 2
cvtsi2sd xmm1, rbx
call fcn.1400d1eb0
movsd qword [r15], xmm0
jmp case.0x140077d1b.46
mov ecx, dword [r14 + 0x10]
test ecx, ecx
je 0x140077eaa
sub ecx, 1
je 0x140077ea0
sub ecx, 1
je 0x140077e99
cmp ecx, 2
je 0x140077e8f
movaps xmm7, xmm8
jmp 0x140077ed3
mov rcx, qword [r14]
call fcn.140064d90
jmp 0x140077ed0
movsd xmm7, qword [r14]
jmp 0x140077ed3
xorps xmm7, xmm7
cvtsi2sd xmm7, qword [r14]
jmp 0x140077ed3
mov rbx, qword [r14]
mov rcx, rbx
call fcn.14002bdd0
mov rcx, rbx
test al, al
je 0x140077ecb
call fcn.1400a19d0
xorps xmm7, xmm7
cvtsi2sd xmm7, rax
jmp 0x140077ed3
call fcn.1400d0c04
movaps xmm7, xmm0
mov ecx, dword [r12 + 0x10]
test ecx, ecx
je 0x140077f0f
sub ecx, 1
je 0x140077f04
sub ecx, 1
je 0x140077efc
cmp ecx, 2
je 0x140077ef1
movaps xmm6, xmm8
jmp 0x140077f39
mov rcx, qword [r12]
call fcn.140064d90
jmp 0x140077f36
movsd xmm6, qword [r12]
jmp 0x140077f39
xorps xmm6, xmm6
cvtsi2sd xmm6, qword [r12]
jmp 0x140077f39
mov rbx, qword [r12]
mov rcx, rbx
call fcn.14002bdd0
mov rcx, rbx
test al, al
je 0x140077f31
call fcn.1400a19d0
xorps xmm6, xmm6
cvtsi2sd xmm6, rax
jmp 0x140077f39
call fcn.1400d0c04
movaps xmm6, xmm0
mov edx, dword [r15 + 0x10]
lea eax, [rdx - 0x26]
cmp eax, 7
ja 0x140077f4c
mov esi, 1
jmp 0x140077f5a
mov esi, 2
cmp eax, 0x16
ja case.0x140077f6e.8
lea r9, [0x140000000]
cdqe
mov ecx, dword [r9 + rax*4 + 0x793ac]
add rcx, r9
jmp rcx
addsd xmm6, xmm7
movsd qword [r15], xmm6
jmp case.0x140077d1b.46
subsd xmm6, xmm7
movsd qword [r15], xmm6
jmp case.0x140077d1b.46
mulsd xmm6, xmm7
movsd qword [r15], xmm6
jmp case.0x140077d1b.46
ucomisd xmm7, xmm8
jp 0x140077fa7
je 0x140078bf6
divsd xmm6, xmm7
movsd qword [r15], xmm6
jmp case.0x140077d1b.46
ucomisd xmm6, xmm7
jp 0x140077fc6
mov eax, 1
je 0x14007896b
mov rax, r13
jmp 0x14007896b
ucomisd xmm6, xmm7
jp 0x140077fdd
mov rax, r13
je 0x14007896b
mov eax, 1
jmp 0x14007896b
comisd xmm6, xmm7
mov rax, r13
seta al
jmp 0x14007896b
comisd xmm7, xmm6
mov rax, r13
seta al
jmp 0x14007896b
comisd xmm6, xmm7
mov rax, r13
setae al
jmp 0x14007896b
comisd xmm7, xmm6
mov rax, r13
setae al
jmp 0x14007896b
ucomisd xmm6, xmm8
jp 0x140078037
jne 0x140078037
comisd xmm8, xmm7
ja 0x140078bf6
comisd xmm8, xmm6
mov eax, r13d
seta al
test eax, eax
je 0x140078063
movaps xmm1, xmm10
movaps xmm0, xmm7
call fcn.1400e05d0
ucomisd xmm0, xmm8
jp case.default.0x140077b28
jne case.default.0x140077b28
ucomisd xmm6, xmm8
jp 0x140078079
jne 0x140078079
ucomisd xmm7, xmm8
jp 0x140078079
je case.default.0x140077b28
movaps xmm1, xmm7
movaps xmm0, xmm6
call fcn.1400d1eb0
movsd qword [r15], xmm0
jmp case.0x140077d1b.46
lea eax, [rdx - 0x31]
cmp eax, 6
ja case.0x140077d1b.46
cmp edi, 1
lea rcx, [0x140106f28]
cmove r12, r14
mov r14, r12
jmp 0x140078c8c
mov ecx, dword [r15 + 0x10]
sub ecx, 0x26
je 0x1400780c8
sub ecx, 1
je 0x1400780c8
sub ecx, 1
je 0x1400780c8
cmp ecx, 1
jne 0x140078143
mov eax, dword [r14 + 0x10]
cmp eax, 5
jne 0x1400780d6
mov rbx, qword [r14]
jmp 0x1400780fb
cmp eax, 4
jne 0x1400780f8
mov rax, qword [r14]
cmp byte [rax + 0x23], 0
jne 0x1400780ed
mov rcx, qword [rax + 0x10]
call fcn.140005640
test byte [rax + 0x21], 0x40
je 0x1400780f8
mov rbx, qword [rax]
jmp 0x1400780fb
mov rbx, r13
mov eax, dword [r12 + 0x10]
cmp eax, 5
jne 0x14007810b
mov rdx, qword [r12]
jmp 0x140078131
cmp eax, 4
jne 0x14007812e
mov rax, qword [r12]
cmp byte [rax + 0x23], 0
jne 0x140078123
mov rcx, qword [rax + 0x10]
call fcn.140005640
test byte [rax + 0x21], 0x40
je 0x14007812e
mov rdx, qword [rax]
jmp 0x140078131
mov rdx, r13
test rbx, rbx
jne 0x1400789f4
test rdx, rdx
jne 0x1400789f4
mov ecx, dword [r14 + 0x10]
test ecx, ecx
je 0x1400782b9
sub ecx, 1
je 0x14007829f
sub ecx, 1
je 0x14007821c
cmp ecx, 2
je 0x140078175
lea r10, [0x140100be0]
mov rdi, r10
jmp 0x1400782d1
mov rdi, qword [r14]
cmp byte [rdi + 0x23], 0
jne 0x140078191
mov rcx, qword [rdi + 0x10]
mov edx, 1
call fcn.140007944
mov rdi, rax
jmp 0x1400781bb
test byte [rdi + 0x21], 1
je 0x14007819f
mov rcx, rdi
call fcn.1400077b0
cmp byte [rdi + 0x23], 3
jne 0x1400781b7
cmp byte [rdi + 0x21], 0
jl 0x1400781b7
mov rcx, rdi
call fcn.1400a46e0
and byte [rdi + 0x21], 0x7f
mov rdi, qword [rdi + 8]
mov rbx, qword [r14]
cmp byte [rbx + 0x23], 0
jne 0x1400781d0
mov rcx, qword [rbx + 0x10]
call fcn.140005640
mov rbx, rax
test byte [rbx + 0x21], 1
je 0x1400781de
mov rcx, rbx
call fcn.1400077b0
mov r13, qword [rbx + 0x10]
shr r13, 1
lea r10, [0x140100be0]
mov ecx, dword [r12 + 0x10]
test ecx, ecx
je 0x140078404
sub ecx, 1
je 0x1400783e9
sub ecx, 1
je 0x140078367
cmp ecx, 2
je 0x1400782f0
mov r15, r10
jmp 0x140078413
movsd xmm3, qword [r14]
lea r8, [0x14010f868]
movq r9, xmm3
lea rcx, [rbp + 0xf0]
mov edx, 0x100
call fcn.1400a1160
lea rdx, [0x14010f874]
movsxd rbx, eax
lea rcx, [rbp + 0xf0]
call fcn.1400d3d3c
cmp rax, rbx
jne 0x140078290
lea ecx, [rbx + 3]
cmp ecx, 0x100
jg 0x140078290
movzx eax, word [rbp + rbx*2 + 0xee]
sub ax, 0x30
cmp ax, 9
ja 0x140078290
mov dword [rbp + rbx*2 + 0xf0], 0x30002e
add ebx, 2
movsxd rax, ebx
mov word [rbp + rax*2 + 0xf0], r13w
movsxd r13, ebx
lea rdi, [rbp + 0xf0]
jmp 0x1400781e5
mov rcx, qword [r14]
lea rdx, [rbp + 0xf0]
mov r8d, 0xa
call fcn.1400ca904
mov rdi, rax
jmp 0x1400782ca
mov r13, qword [r14 + 8]
mov rdi, qword [r14]
cmp r13, 0xffffffffffffffff
jne 0x1400781e5
lea r10, [0x140100be0]
mov r13, 0xffffffffffffffff
nop dword [rax + rax]
inc r13
cmp word [rdi + r13*2], 0
jne 0x1400782e0
jmp 0x1400781ec
mov rbx, qword [r12]
cmp byte [rbx + 0x23], 0
jne 0x14007830d
mov rcx, qword [rbx + 0x10]
mov edx, 1
call fcn.140007944
mov r15, rax
jmp 0x140078337
test byte [rbx + 0x21], 1
je 0x14007831b
mov rcx, rbx
call fcn.1400077b0
cmp byte [rbx + 0x23], 3
jne 0x140078333
cmp byte [rbx + 0x21], 0
jl 0x140078333
mov rcx, rbx
call fcn.1400a46e0
and byte [rbx + 0x21], 0x7f
mov r15, qword [rbx + 8]
mov rbx, qword [r12]
cmp byte [rbx + 0x23], 0
jne 0x14007834d
mov rcx, qword [rbx + 0x10]
call fcn.140005640
mov rbx, rax
test byte [rbx + 0x21], 1
je 0x14007835b
mov rcx, rbx
call fcn.1400077b0
mov rbx, qword [rbx + 0x10]
shr rbx, 1
jmp 0x14007842b
movsd xmm3, qword [r12]
lea r8, [0x14010f868]
movq r9, xmm3
lea rcx, [rbp + 0x2f0]
mov edx, 0x100
call fcn.1400a1160
lea rdx, [0x14010f874]
movsxd rbx, eax
lea rcx, [rbp + 0x2f0]
call fcn.1400d3d3c
cmp rax, rbx
jne 0x1400783dd
lea ecx, [rbx + 3]
cmp ecx, 0x100
jg 0x1400783dd
movzx eax, word [rbp + rbx*2 + 0x2ee]
sub ax, 0x30
cmp ax, 9
ja 0x1400783dd
mov dword [rbp + rbx*2 + 0x2f0], 0x30002e
add ebx, 2
movsxd rax, ebx
xor ecx, ecx
mov word [rbp + rax*2 + 0x2f0], cx
movsxd rbx, ebx
lea r15, [rbp + 0x2f0]
jmp 0x14007842b
mov rcx, qword [r12]
lea rdx, [rbp + 0x2f0]
mov r8d, 0xa
call fcn.1400ca904
mov r15, rax
jmp 0x140078413
mov rbx, qword [r12 + 8]
mov r15, qword [r12]
cmp rbx, 0xffffffffffffffff
jne 0x14007842b
mov rbx, 0xffffffffffffffff
nop word [rax + rax]
inc rbx
cmp word [r15 + rbx*2], 0
jne 0x140078420
mov rax, qword [rbp + 8]
mov esi, 1
mov eax, dword [rax + 0x10]
add eax, 0xffffffdb
cmp eax, 0xa
ja case.0x140078457.42
lea r9, [0x140000000]
cdqe
mov r8d, dword [r9 + rax*4 + 0x79408]
add r8, r9
jmp r8
mov rdx, rdi
mov rcx, r15
call fcn.1400c51bc
mov r15, qword [rbp + 8]
xor r13d, r13d
mov ecx, r13d
test eax, eax
sete cl
mov qword [r15], rcx
jmp case.0x140077d1b.46
cmp rbx, r13
jne 0x1400784f3
test rbx, rbx
je 0x1400784a3
sub r15, rdi
nop dword [rax]
movzx eax, word [rdi]
cmp word [r15 + rdi], ax
jne 0x1400784f3
add rdi, 2
sub rbx, rsi
jne 0x140078490
mov rax, rsi
xor r13d, r13d
jmp 0x140078967
mov rdx, rdi
mov rcx, r15
call fcn.1400c51bc
mov r15, qword [rbp + 8]
xor r13d, r13d
mov ecx, r13d
test eax, eax
setne cl
mov qword [r15], rcx
jmp case.0x140077d1b.46
cmp rbx, r13
jne 0x1400784a3
test rbx, rbx
je 0x1400784f3
sub r15, rdi
nop dword [rax]
movzx eax, word [rdi]
cmp word [r15 + rdi], ax
jne 0x1400784a3
add rdi, 2
sub rbx, rsi
jne 0x1400784e0
xor r13d, r13d
mov eax, r13d
jmp 0x140078967
mov eax, dword [r12 + 0x10]
cmp eax, 5
jne 0x14007850d
mov rax, r12
jmp 0x14007852b
cmp eax, 4
jne 0x140078535
mov rax, qword [r12]
cmp byte [rax + 0x23], 0
jne 0x140078525
mov rcx, qword [rax + 0x10]
call fcn.140005640
test byte [rax + 0x21], 0x40
je 0x140078535
cmp qword [rax], 0
jne 0x140078c7f
mov eax, dword [r14 + 0x10]
cmp eax, 5
jne 0x140078543
mov rax, r14
jmp 0x140078560
cmp eax, 4
jne 0x14007856a
mov rax, qword [r14]
cmp byte [rax + 0x23], 0
jne 0x14007855a
mov rcx, qword [rax + 0x10]
call fcn.140005640
test byte [rax + 0x21], 0x40
je 0x14007856a
cmp qword [rax], 0
jne 0x140078c82
mov rsi, qword [rbp + 0x50]
test rsi, rsi
je 0x1400785c7
cmp byte [rsi + 0x23], 0
jne 0x140078584
mov rcx, qword [rsi + 0x10]
call fcn.140005640
jmp 0x140078587
mov rax, rsi
cmp byte [rax + 0x23], 1
jne 0x1400785c7
mov r8, r13
mov rdx, rdi
mov rcx, rsi
call fcn.1400a59a0
test eax, eax
je 0x140079209
mov rax, qword [rbp + 8]
xor r13d, r13d
mov r8, qword [rbp + 0x590]
mov qword [rax], rsi
mov rsi, rax
mov dword [rax + 0x10], 4
mov dword [rax + 8], r13d
jmp 0x140077145
lea r14, [r13 + 1]
add r14, rbx
test rsi, rsi
jne 0x1400787c8
mov rdx, qword [rbp + 0x70]
mov eax, dword [rbp + 0x10]
mov rcx, qword [rbp + 0x18]
test rdx, rdx
je 0x1400785fa
test eax, eax
jne 0x1400785fa
cmp dword [rcx + 0x28], 0x49
jne 0x1400785fa
mov rsi, rdx
lea r12d, [rax + 1]
jmp 0x140078650
cmp dword [rcx + 0x28], 0x13
jne 0x1400787c8
test eax, eax
je 0x1400787c8
movsxd rax, dword [rbp + 0x28]
mov rsi, qword [rbp + 0x38]
mov rsi, qword [rsi + rax*8 - 0x18]
cmp dword [rsi + 0x10], 4
jne 0x1400787c8
mov rsi, qword [rsi]
cmp byte [rsi + 0x23], 0
jne 0x140078637
mov rcx, qword [rsi + 0x10]
call fcn.140005640
jmp 0x14007863a
mov rax, rsi
cmp byte [rax + 0x23], 1
jne 0x1400787c8
xor r12d, r12d
test rsi, rsi
je 0x1400787c8
cmp byte [rsi + 0x23], 0
jne 0x140078666
mov rcx, qword [rsi + 0x10]
xor edx, edx
call fcn.140007944
mov rcx, rax
jmp 0x14007866a
mov rcx, qword [rsi + 8]
xor eax, eax
lea rdx, [0x14012c620]
cmp rcx, rdx
cmovne rax, rcx
cmp rax, r15
jne 0x1400786e4
mov r8, r13
mov rdx, rdi
mov rcx, rsi
call fcn.1400a58f0
test eax, eax
je 0x1400787c8
test r12d, r12d
jne 0x140078e39
mov eax, dword [rbp + 0x28]
mov rcx, qword [rbp + 0x38]
add eax, 0xfffffffd
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
add r9, 0x18
mov dword [rbp + 0x10], eax
xor r13d, r13d
cdqe
lea r12, [r13 - 1]
mov rcx, qword [rcx + rax*8]
mov rax, qword [rcx]
mov rcx, qword [rbp + 8]
mov rsi, rcx
mov dword [rcx + 0x10], 4
mov qword [rcx], rax
mov dword [rcx + 8], r13d
jmp 0x140077150
cmp rax, rdi
je 0x1400787c8
lea r8, [r14 - 1]
xor r9d, r9d
xor edx, edx
mov rcx, rsi
call fcn.1400a5210
test eax, eax
je 0x140079209
cmp byte [rsi + 0x23], 0
jne 0x14007871f
mov rcx, qword [rsi + 0x10]
mov edx, 1
call fcn.140007944
mov r14, rax
jmp 0x140078749
test byte [rsi + 0x21], 1
je 0x14007872d
mov rcx, rsi
call fcn.1400077b0
cmp byte [rsi + 0x23], 3
jne 0x140078745
cmp byte [rsi + 0x21], 0
jl 0x140078745
mov rcx, rsi
call fcn.1400a46e0
and byte [rsi + 0x21], 0x7f
mov r14, qword [rsi + 8]
test rbx, rbx
je 0x14007875d
lea r8, [rbx + rbx]
mov rdx, r15
mov rcx, r14
call fcn.1400e2370
lea r8, [r13*2 + 2]
mov rdx, rdi
lea rcx, [r14 + rbx*2]
call fcn.1400e2370
mov rcx, rsi
call fcn.140024ab0
test r12d, r12d
jne 0x140078e39
mov eax, dword [rbp + 0x28]
mov rcx, qword [rbp + 0x38]
add eax, 0xfffffffd
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
add r9, 0x18
mov dword [rbp + 0x10], eax
xor r13d, r13d
cdqe
lea r12, [r13 - 1]
mov rcx, qword [rcx + rax*8]
mov rax, qword [rcx]
mov rcx, qword [rbp + 8]
mov rsi, rcx
mov dword [rcx + 0x10], 4
mov qword [rcx], rax
mov dword [rcx + 8], r13d
jmp 0x140077150
mov rax, qword [rbp + 0x5b8]
mov rdx, qword [rbp + 0x58]
mov rcx, rdx
sub rcx, qword [rax]
mov rax, qword [rbp + 0x5c0]
sar rcx, 1
mov eax, dword [rax]
sub eax, ecx
cdqe
cmp r14, rax
ja 0x140078806
mov rax, qword [rbp + 8]
mov r12d, dword [rbp]
mov qword [rax], rdx
lea rdx, [rdx + r14*2]
mov qword [rbp + 0x58], rdx
jmp 0x140078887
cmp r14, 0x1001
jae 0x14007885b
mov rdx, qword [rbp + 0x60]
cmp rdx, 0x9c40
jae 0x14007885b
lea rax, [r14 + r14]
lea rcx, [rax + 0xf]
cmp rcx, rax
ja 0x140078833
movabs rcx, 0xffffffffffffff0
and rcx, 0xfffffffffffffff0
mov rax, rcx
call fcn.1400de970
mov rsi, qword [rbp + 8]
sub rsp, rcx
mov r12d, dword [rbp]
add rdx, r14
mov qword [rbp + 0x60], rdx
lea rax, [rsp + 0x40]
mov qword [rsi], rax
jmp 0x140078887
lea rcx, [r14 + r14]
call fcn.1400c534c
mov rcx, qword [rbp + 8]
mov qword [rcx], rax
test rax, rax
je 0x140078fe1
movsxd r12, dword [rbp]
mov rdx, qword [rbp + 0x20]
mov qword [rdx + r12*8], rcx
inc r12d
mov dword [rbp], r12d
test rbx, rbx
je 0x1400788a1
mov rdx, r15
lea r8, [rbx + rbx]
mov r15, qword [rbp + 8]
mov rcx, qword [r15]
call fcn.1400e2370
jmp 0x1400788a5
mov r15, qword [rbp + 8]
mov rax, qword [r15]
lea r8, [r13*2 + 2]
mov rdx, rdi
lea rcx, [rax + rbx*2]
call fcn.1400e2370
lea rax, [r14 - 1]
xor r13d, r13d
mov qword [r15 + 8], rax
mov esi, r13d
jmp 0x140078972
mov eax, dword [r14 + 0x10]
cmp eax, 5
jne 0x1400788e0
mov rcx, qword [r14]
xor r13d, r13d
jmp 0x14007890b
cmp eax, 4
jne 0x140078905
mov rax, qword [r14]
cmp byte [rax + 0x23], 0
jne 0x1400788f7
mov rcx, qword [rax + 0x10]
call fcn.140005640
xor r13d, r13d
test byte [rax + 0x21], 0x40
je 0x140078908
mov rcx, qword [rax]
jmp 0x14007890b
xor r13d, r13d
mov rcx, r13
lea r9, vtable.type_info.0
mov dword [rsp + 0x20], r13d
lea r8, vtable.type_info.0
xor edx, edx
call fcn.1400df2f4
test rax, rax
je 0x140078ca2
lea rdx, [0x14010a970]
mov rcx, rax
call fcn.140005520
test rax, rax
je 0x140078ca2
cmp dword [rax + 8], 5
jne 0x140078ca2
mov rdx, qword [rax]
test rdx, rdx
je 0x140078ca2
mov rcx, r12
call fcn.14009bb80
movzx eax, al
mov r15, qword [rbp + 8]
mov qword [r15], rax
mov r12d, dword [rbp]
mov rbx, qword [rbp + 0x50]
mov rax, r15
mov ecx, reloc.WSOCK32.dll_recv
mov dword [rax + rcx], esi
test rbx, rbx
je 0x140078a2a
mov rdx, r15
mov rcx, rbx
call fcn.1400a43b0
test eax, eax
je 0x14007920d
cmp byte [rbx + 0x23], 0
jne 0x1400789ae
mov rcx, qword [rbx + 0x10]
call fcn.140005640
jmp 0x1400789b1
mov rax, rbx
cmp byte [rax + 0x23], 1
lea rdx, [0x140100be0]
mov rsi, qword [rbp + 8]
mov r12, 0xffffffffffffffff
mov r14d, dword [rbp]
mov r9, qword [rbp + 0x18]
mov r8, qword [rbp + 0x590]
mov r10d, dword [rbp + 4]
jne 0x14007715f
mov dword [r15 + 0x10], 4
mov qword [r15], rbx
mov dword [r15 + 8], r13d
jmp 0x14007715f
mov eax, dword [r15 + 0x10]
mov rcx, r13
mov r8, qword [rbp + 0x590]
sub eax, 0x28
cmp eax, 1
mov dword [r15 + 0x10], 1
mov rax, r13
mov rsi, r15
seta cl
cmp rbx, rdx
setne al
xor rax, rcx
mov qword [r15], rax
jmp 0x140077145
mov rsi, qword [rbp + 8]
mov r8, qword [rbp + 0x590]
jmp 0x140077145
mov rsi, r15
jmp 0x14007715f
mov r9, qword [rbp + 0x18]
lea rdx, [0x140100be0]
mov rcx, qword [rbp + 0x38]
mov r10d, dword [rbp + 4]
jmp 0x140078a60
mov rcx, qword [rbp + 0x38]
jmp 0x140078a67
mov rcx, r8
mov r8, qword [rbp + 0x590]
mov r14d, dword [rbp]
add r9, 0x18
mov qword [rbp + 0x18], r9
cmp dword [r9 + 0x10], 0x49
jne 0x14007680f
cmp esi, 1
jne 0x14007915e
movzx edx, byte [r8]
mov r14, qword [rcx]
cmp dl, 2
je 0x140078e39
mov rax, qword [rbp + 0x70]
test rax, rax
je 0x140078cbf
mov rdx, r14
mov rcx, rax
call fcn.1400a43b0
mov r12d, dword [rbp]
test eax, eax
je 0x14007920d
lea r15, [0x140100be0]
jmp 0x140078e44
lea rcx, [0x14010d0e0]
jmp 0x140078c8c
mov rax, qword [0x1401241d8]
cmp qword [rax + 0x28], 0
je 0x140078b14
mov qword [rsp + 0x30], r13
lea rcx, [0x14012c670]
mov qword [rsp + 0x28], r13
mov r9d, 1
mov r8, rbx
mov qword [rsp + 0x20], r13
mov rdx, rsi
call fcn.140058630
lea rdx, [0x14010d150]
test rax, rax
jne 0x140078b1b
lea rdx, [0x14010d1c8]
mov r12, rsi
jmp 0x140079169
movsxd rax, dword [rbp + 0x598]
lea rdx, [0x14010d110]
mov r9, qword [rbp + 0x590]
lea rcx, [rax + rax*4]
mov rax, qword [r9 + 8]
mov r12, qword [rax + rcx*8 + 8]
jmp 0x140079170
mov r12, qword [rbp + 0x30]
lea rdx, [0x14010d0a0]
mov r9, qword [rbp + 0x590]
jmp 0x140079181
mov rdx, rdi
lea rcx, [0x14012c670]
call fcn.140011fc0
mov rdx, qword [rbp + 0x5a0]
mov ecx, eax
mov dword [rdx], eax
jmp 0x1400791f8
mov rcx, qword [rbp + 0xa0]
test rcx, rcx
je 0x140078e39
call fcn.1400c5338
jmp 0x140078e39
mov dword [rax + 0x10], r13d
mov r15, r14
mov qword [rax + 0x20], r14
mov qword [rax], r14
mov qword [rax + 8], rbx
mov qword [rbp + 0x40], r14
jmp 0x140078e40
mov r9, r12
lea rcx, [rbp + 0x80]
mov r8d, r13d
mov rdx, rdi
call fcn.140010f40
mov ecx, dword [rbp + 0xb0]
jmp 0x1400791ef
mov rdx, qword [rbp + 0x5a0]
xor r15d, r15d
mov qword [rbp + 0x40], r15
mov dword [rdx], ebx
jmp 0x140078e40
lea rcx, [0x140102b78]
jmp 0x140078c8c
mov rax, qword [0x1401241d8]
mov rcx, qword [0x14012c510]
cmp dword [rax + 0x60], 0
jne 0x140078c4c
cmp dword [0x14012cd88], 0
jne 0x140078c4c
cmp byte [0x140126ada], 0
jne 0x140078c4c
test rcx, rcx
jne 0x140078c4c
mov r9, qword [rbp + 0x590]
lea rdx, [0x140107518]
mov qword [rsp + 0x28], r13
lea rcx, [0x14012c670]
mov qword [rsp + 0x20], r9
lea r9, [0x140100be0]
jmp 0x1400791e2
mov r9, qword [rbp + 0x590]
lea r8, [0x140100be0]
mov qword [rsp + 0x28], rcx
lea rdx, [0x140107518]
lea rcx, [0x14012c670]
mov dword [rsp + 0x20], 9
call fcn.14000ef80
jmp 0x1400791ed
mov r14, r12
xor r13d, r13d
lea rcx, [0x140102b58]
mov rdx, r14
call fcn.1400112c0
cmp eax, 1
mov ecx, r13d
sete cl
jmp 0x1400791ef
lea rcx, [0x140109798]
jmp 0x140078c8c
cmp dword [rbp + 4], 0
lea rcx, [0x140102b78]
cmovne r14, r12
xor r13d, r13d
jmp 0x140078c8c
mov ecx, dword [r14 + 0x10]
cmp ecx, 3
je 0x14007915e
lea eax, [rdx - 8]
test al, 0xf6
jne 0x140078d71
cmp dl, 9
je 0x140078d71
mov edx, ecx
test ecx, ecx
je 0x140078d31
sub edx, 1
je 0x140078d21
sub edx, 1
je 0x140078d11
cmp edx, 2
je 0x140078d04
cmp ecx, 5
mov r13d, 0
sete r13b
jmp 0x140078d53
mov rcx, qword [r14]
call fcn.14006b4f0
mov r13d, eax
jmp 0x140078d53
movsd xmm0, qword [r14]
ucomisd xmm0, xmm8
jp 0x140078d4d
je 0x140078d53
jmp 0x140078d4d
cmp qword [r14], 0
mov r13d, 0
setne r13b
jmp 0x140078d53
mov rcx, qword [r14]
call fcn.14006b450
test eax, eax
jne 0x140078d4d
cmp qword [r14 + 8], 0
je 0x140078d53
mov rax, qword [r14]
cmp word [rax], 0
jne 0x140078d53
mov r13d, 1
test r13d, r13d
lea rax, [0x14010615c]
lea r15, [0x140100be0]
cmovne r15, rax
mov qword [rbp + 0x40], r15
jmp 0x140078e40
mov rdi, qword [rbp + 0x5a8]
test rdi, rdi
je 0x140078da7
mov edx, ecx
test ecx, ecx
je 0x140078ead
sub edx, 1
je 0x140078e98
sub edx, 1
je 0x140078e98
sub edx, 2
je 0x140078e02
cmp edx, 1
je 0x140078e98
mov rbx, qword [rbp + 0x5b0]
mov edx, ecx
mov r15, qword [rbx]
mov qword [rbp + 0x40], r15
sub edx, 1
je 0x14007912d
sub edx, 1
je 0x140079110
cmp edx, 3
je 0x140078c85
mov rdi, qword [r14]
mov qword [rbp + 0x40], r15
cmp ecx, 4
jne 0x140078f48
cmp byte [rdi + 0x23], 0
jne 0x140078ef0
mov rcx, qword [rdi + 0x10]
mov edx, 1
call fcn.140007944
mov rdi, rax
jmp 0x140078f1a
mov rbx, qword [r14]
cmp byte [rbx + 0x23], 0
jne 0x140078e16
mov rcx, qword [rbx + 0x10]
call fcn.140005640
jmp 0x140078e19
mov rax, rbx
test byte [rax + 0x21], 0x70
je 0x140078e82
mov rdx, rdi
mov rcx, rbx
call fcn.140007824
cmp dword [rdi + 0x10], 5
jne 0x140078e39
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WSOCK32.dll_htonl]
lea r15, [0x140100be0]
mov r12d, dword [rbp]
mov r8, qword [rbp + 0x20]
test r12d, r12d
je 0x140079239
movsxd r15, dword [rbp]
lea rbx, [r8 + r15*8]
nop dword [rax]
mov rax, qword [rbx - 8]
lea rbx, [rbx - 8]
dec r15d
cmp dword [rax + 0x10], 0
mov rcx, qword [rax]
jne 0x140079224
call fcn.1400c5338
jmp 0x14007922a
mov rbx, qword [rbp + 0x5b0]
mov rdi, qword [r14]
mov r15, qword [rbx]
mov qword [rbp + 0x40], r15
jmp 0x140078de2
mov dword [rdi + 0x10], ecx
mov rax, qword [r14]
mov qword [rdi], rax
cmp dword [r14 + 0x10], 5
jne 0x140078e39
mov rcx, qword [r14]
jmp 0x140078e33
movsxd rax, dword [rbp]
test eax, eax
je 0x140078da7
mov r8, qword [rbp + 0x20]
lea edx, [rax - 1]
cmp qword [r8 + rax*8 - 8], r14
jne 0x140078da7
mov r15, qword [r14]
mov r12d, edx
mov rax, qword [r14 + 8]
mov qword [rbp + 0x40], r15
mov qword [rdi + 0x20], r15
mov qword [rdi], r15
mov qword [rdi + 8], rax
mov dword [rdi + 0x10], r13d
mov dword [rbp], edx
jmp 0x140078e48
test byte [rdi + 0x21], 1
je 0x140078efe
mov rcx, rdi
call fcn.1400077b0
cmp byte [rdi + 0x23], 3
jne 0x140078f16
cmp byte [rdi + 0x21], 0
jl 0x140078f16
mov rcx, rdi
call fcn.1400a46e0
and byte [rdi + 0x21], 0x7f
mov rdi, qword [rdi + 8]
mov r14, qword [r14]
cmp byte [r14 + 0x23], 0
jne 0x140078f30
mov rcx, qword [r14 + 0x10]
call fcn.140005640
mov r14, rax
test byte [r14 + 0x21], 1
je 0x140078f3f
mov rcx, r14
call fcn.1400077b0
mov r14, qword [r14 + 0x10]
shr r14, 1
jmp 0x140078f50
mov r14, qword [r14 + 8]
mov qword [rbp + 0x40], r15
movsxd rax, dword [rbp + 0x598]
lea r12, [r14 + 1]
mov r9, qword [rbp + 0x590]
lea rcx, [rax + rax*4]
mov rax, qword [r9 + 8]
mov eax, dword [rax + rcx*8 + 4]
mov ecx, 0xff
cmp eax, ecx
cmovb eax, ecx
lea ecx, [rax + 1]
add rcx, qword [rbp + 0x5d0]
cmp r12, rcx
jbe 0x1400790c9
mov rax, qword [rbp + 0x5c0]
mov r15, qword [rax]
sub r15, rcx
add r15, r12
lea rcx, [r15 + r15]
call fcn.1400c534c
mov rsi, rax
test rax, rax
je 0x140078fe4
cmp r15, 0x400000
jbe 0x140078fbb
inc dword [0x14012c2e4]
mov rax, qword [rbp + 0x5b8]
mov rdx, qword [rax]
mov rax, qword [rbx]
sub rax, rdx
sar rax, 1
je 0x14007901e
lea rbx, [rax + rax]
mov rcx, rsi
mov r8, rbx
call fcn.1400e2370
jmp 0x140079021
xor r13d, r13d
mov rax, qword [0x14012c4e8]
lea rdx, [0x1401049c0]
mov qword [rsp + 0x28], rax
lea rcx, [0x14012c670]
xor r9d, r9d
mov qword [rsp + 0x20], r13
xor r8d, r8d
call fcn.14000f470
mov rdx, qword [rbp + 0x5a0]
mov ecx, eax
mov dword [rdx], eax
jmp 0x1400791f8
mov rbx, r13
mov rax, qword [rbp + 0x5b0]
lea r10, [rsi + rbx]
lea rbx, [r14 + r14]
mov qword [rbp + 0x40], r10
mov r8, rbx
mov rdx, rdi
mov rcx, r10
mov qword [rax], r10
call fcn.1400e2370
mov rdi, qword [rbp + 0x5b0]
mov rax, qword [rdi]
mov word [rbx + rax], r13w
mov rbx, qword [rbp + 0x5b8]
mov rcx, qword [rbx]
call fcn.1400c5338
mov r10, qword [rbp + 0x5c0]
mov rax, qword [r10]
cmp rax, 0x400000
jbe 0x14007907b
dec dword [0x14012c2e4]
mov rdx, qword [rbx]
lea r9, [rdx + rax*2]
mov eax, dword [rbp + 0x598]
test eax, eax
jle 0x1400790ba
mov rcx, qword [rbp + 0x5c8]
mov r8d, eax
mov rax, qword [rcx]
cmp rax, rdx
jb 0x1400790b0
cmp rax, r9
jae 0x1400790b0
sub rax, rdx
sar rax, 1
lea rax, [rsi + rax*2]
mov qword [rcx], rax
add rcx, 8
sub r8, 1
jne 0x140079096
mov qword [rbx], rsi
mov rsi, qword [rdi]
mov qword [r10], r15
mov r15, qword [rbp + 0x40]
jmp 0x1400790f1
mov rax, qword [rbp + 0x5b0]
lea rbx, [r14 + r14]
mov r8, rbx
mov rdx, rdi
mov rsi, qword [rax]
mov rcx, rsi
call fcn.1400e2370
mov rdi, qword [rbp + 0x5b0]
mov word [rbx + rsi], r13w
mov r9, qword [rbp + 0x5a8]
test r9, r9
je 0x140079104
mov qword [r9], rsi
mov qword [r9 + 8], r14
lea rax, [rsi + r12*2]
mov qword [rdi], rax
jmp 0x140078e40
movsd xmm0, qword [r14]
mov rdx, r15
call fcn.1400a3ef0
inc eax
movsxd rcx, eax
add rcx, rcx
add qword [rbx], rcx
jmp 0x140078e40
mov rcx, qword [r14]
mov r8d, 0xa
mov rdx, r15
call fcn.1400ca904
nop
cmp word [rax + r12*2 + 2], 0
lea r12, [r12 + 1]
jne 0x140079140
lea rax, [r12*2 + 2]
add qword [rbx], rax
jmp 0x140078e40
mov r12, qword [rbp + 0x30]
lea rdx, [0x14010d0a0]
mov r9, qword [rbp + 0x590]
test r12, r12
lea rax, [0x140100be0]
cmovne rax, r12
mov r12, rax
cmp byte [0x14012ce0c], 0
lea rcx, [0x14012c670]
je 0x1400791af
mov qword [rsp + 0x28], 0
mov r8, r12
mov qword [rsp + 0x20], r9
mov r9d, 9
call fcn.14000f470
jmp 0x1400791ed
cmp byte [0x14012ce0f], 0
je 0x1400791d1
mov eax, dword [r9 + 4]
mov r8, r12
movzx r9d, word [r9 + 2]
mov dword [rsp + 0x20], eax
call fcn.14000f320
xor ecx, ecx
jmp 0x1400791ef
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], r9
mov r9, r12
mov r8d, 9
call fcn.140010330
mov ecx, eax
mov rdx, qword [rbp + 0x5a0]
mov dword [rdx], ecx
mov r12d, dword [rbp]
test ecx, ecx
je 0x140079214
mov r15, qword [rbp + 0x40]
jmp 0x140078e44
mov r12d, dword [rbp]
mov rdx, qword [rbp + 0x5a0]
xor eax, eax
mov r15d, eax
mov qword [rbp + 0x40], rax
mov dword [rdx], eax
jmp 0x140078e44
mov rdx, qword [rcx]
call qword [rdx + reloc.WSOCK32.dll_recv]
test r15d, r15d
jne 0x140078e60
mov rax, qword [rbp + 0x40]
jmp 0x14007923c
mov rax, r15
movaps xmm6, xmmword [rbp + 0x530]
movaps xmm7, xmmword [rbp + 0x520]
movaps xmm8, xmmword [rbp + 0x510]
movaps xmm9, xmmword [rbp + 0x500]
movaps xmm10, xmmword [rbp + 0x4f0]
lea rsp, [rbp + 0x548]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret