Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- double StreamingNeuron::think(int num)
- {
- 00007FF728845B35 mov qword ptr [rsp+20h],rbx
- 00007FF728845B3A mov r9d,r10d
- 00007FF728845B3D mov qword ptr [rsp+28h],rbp
- {
- short c = m_input[i].m_bits[num] & m_weight[i].m_bits[num];
- 00007FF728845B42 mov rbp,qword ptr [rcx+8]
- 00007FF728845B46 mov qword ptr [rsp+30h],rdi
- 00007FF728845B4B mov qword ptr [rsp+38h],r12
- 00007FF728845B50 mov r12,rbp
- 00007FF728845B53 mov qword ptr [rsp+8],r14
- 00007FF728845B58 mov r14,qword ptr [rcx+18h]
- 00007FF728845B5C mov qword ptr [rsp],r15
- 00007FF728845B60 sub r12,r14
- 00007FF728845B63 movsxd r15,edx
- 00007FF728845B66 lea rbx,[r14+0Eh]
- 00007FF728845B6A nop word ptr [rax+rax]
- short q = m_input[i].m_bits[num + 1] & m_weight[i].m_bits[num + 1];
- bool a = (long)1 & m_input[i].m_bits[7];
- bool b = (long)1 & m_weight[i].m_bits[7];
- 00007FF728845B70 movzx r11d,byte ptr [rbx]
- 00007FF728845B74 lea rax,[r15+r9*8]
- 00007FF728845B78 movzx edi,word ptr [r14+rax*2]
- short t = 0;
- //t += popcount(c, q);
- t += __popcnt16(c);
- t += __popcnt16(q);
- 00007FF728845B7D lea rcx,[r15+r9*8]
- 00007FF728845B81 and di,word ptr [rbp+rax*2]
- short t = 0;
- //t += popcount(c, q);
- t += __popcnt16(c);
- t += __popcnt16(q);
- 00007FF728845B86 and r11b,1
- 00007FF728845B8A movzx r8d,byte ptr [r12+rbx]
- 00007FF728845B8F lea rax,[r15+r9*8]
- 00007FF728845B93 movzx edx,word ptr [rbp+rax*2+2]
- 00007FF728845B98 and dx,word ptr [r14+rcx*2+2]
- 00007FF728845B9E popcnt cx,dx
- 00007FF728845BA3 popcnt ax,di
- 00007FF728845BA8 add cx,ax
- 00007FF728845BAB and r8b,1
- if ((a && !b) || (!a && b)&& (c != 0))
- 00007FF728845BAF je stochastic::StreamingNeuron::think+98h (07FF728845BB8h)
- 00007FF728845BB1 test r11b,r11b
- 00007FF728845BB4 je stochastic::StreamingNeuron::think+0A2h (07FF728845BC2h)
- 00007FF728845BB6 jmp stochastic::StreamingNeuron::think+0ADh (07FF728845BCDh)
- 00007FF728845BB8 test r11b,r11b
- 00007FF728845BBB je stochastic::StreamingNeuron::think+0ADh (07FF728845BCDh)
- 00007FF728845BBD test di,di
- 00007FF728845BC0 je stochastic::StreamingNeuron::think+0ADh (07FF728845BCDh)
- {
- t -= 1;
- 00007FF728845BC2 mov eax,1
- 00007FF728845BC7 sub ax,cx
- t *= -1;
- 00007FF728845BCA movzx ecx,ax
- }
- total += t;
- 00007FF728845BCD add r10w,cx
- 00007FF728845BD1 inc r9
- 00007FF728845BD4 add rbx,10h
- 00007FF728845BD8 cmp r9,rsi
- 00007FF728845BDB jl stochastic::StreamingNeuron::think+50h (07FF728845B70h)
- }
- if (total < 0)
- 00007FF728845BDD mov r15,qword ptr [rsp]
- 00007FF728845BE1 mov r14,qword ptr [rsp+8]
- 00007FF728845BE6 mov r12,qword ptr [rsp+38h]
- 00007FF728845BEB mov rdi,qword ptr [rsp+30h]
- 00007FF728845BF0 mov rbp,qword ptr [rsp+28h]
- 00007FF728845BF5 mov rbx,qword ptr [rsp+20h]
- 00007FF728845BFA test r10w,r10w
- 00007FF728845BFE jns stochastic::StreamingNeuron::think+0EAh (07FF728845C0Ah)
- 00007FF728845C00 vxorpd xmm0,xmm0,xmm0
- }
- 00007FF728845C04 add rsp,10h
- 00007FF728845C08 pop rsi
- 00007FF728845C09 ret
- return 0;
- return (total);
- 00007FF728845C0A movsx eax,r10w
- 00007FF728845C0E vxorps xmm0,xmm0,xmm0
- 00007FF728845C12 vcvtsi2sd xmm0,xmm0,eax
- }
- 00007FF728845C16 add rsp,10h
- 00007FF728845C1A pop rsi
- 00007FF728845C1B ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement